Avatar billede cool-wil Nybegynder
30. december 2001 - 16:44 Der er 10 kommentarer og
3 løsninger

default txt editor og color?

jeg har 2 smp jeg gerne vil have lidt svar på:-)
Hvordan laver jeg en funktion så man med mit program, kan åbne txt filer, altså i stedet for at den åbner dem i notepad, hvordan gør jeg det?

Og jeg har en colorgrind som jeg gerne vil bruge, til at vælge tekst farve på det indsatte tekst i en richedit.... hvordan gør jeg det, noget kode tak:-

/wil
www.theroom.dk
Avatar billede stoney Nybegynder
30. december 2001 - 17:02 #1
drope en button1,button2,richedit1,opendialog1, colordialog1

procedure TForm1.Button1Click(Sender: TObject);
begin
if opendialog1.execute then
richedit1.lines.loadfromfile(opendialog1.filename);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
if ColorDialog1.Execute then
richedit1.SelAttributes.Color := ColorDialog1.Color;
end;

Stoney
Avatar billede cool-wil Nybegynder
30. december 2001 - 20:01 #2
stoney

er dette svar på begge spm, eller kun det med color?

jeg har fundet ud af at det var en colorbox jeg ville bruge, kan du hjælpe mig med noget kode til den?
Avatar billede cool-wil Nybegynder
30. december 2001 - 20:04 #3
Hvordan laver jeg en funktion så man med mit program, kan åbne txt filer, altså i stedet for at den åbner dem i notepad, hvordan gør jeg det?

dette var forkert:-) jeg har selvfølgelig lavet denne funktion før:-)

jeg mente:
hvordan kan jeg lave en kode, så hvergang en bruger trykker på en txt fil på f.eks. skrivebordet, så skal den åbne mit program, i stedet for notepad? og jeg vil gerne have en kode til at afinstallere dette igen også..

kan du hjælpe med det?
Avatar billede cool-wil Nybegynder
30. december 2001 - 20:04 #4
sætter points op til 60, måske det giver mere hjælp:-)

wil/
Avatar billede cyberlsn Nybegynder
30. december 2001 - 20:59 #5
Øjeblik, jeg har lige lavet et færdig program til dig, med de ønskede funktioner. Jeg uploader den lige...
Avatar billede cyberlsn Nybegynder
30. december 2001 - 21:03 #6
Avatar billede stoney Nybegynder
31. december 2001 - 02:47 #7
Hallo !!
Er det en fil associering du spørger om eller en html editor ( Jeg synes jeg har set dette spørgsmål en 16-17 gange før.)

Hvis det er en html editor med highlight og whatever du har spurgt om før så sig det, så skal jeg hjælpe dig. (selvfølgelig også hvis det er fil
associering vil jeg hjælpe dig)



Plz. spørg rigtigt og chancen for du for et rigtigt svar = \"meget større\"

Stoney

GNR Rulez

Avatar billede cool-wil Nybegynder
31. december 2001 - 03:03 #8
cyberlsn> jeg kan ikke bruge dit program til noget, har mit eget:-)

Stoney> jeg har lidt svært ved at formulere mig idag*gg* har haft tømmermænd hele dagen

jeg spørger ikke om en html editor denne gang, det kommer nok, men jeg spørger om hvordan jeg får txt filer til at bruge mit program i stedet for default notepad i windows...

desuden vil jeg gerne have at vide hvordan man slår dette fra igen også:-)

altså som du siger fil associering.

kan du hjælpe?

wil/

Avatar billede koldstar Nybegynder
02. januar 2002 - 00:55 #9
hvis jeg forstår dig rigtig skal du da ikke kode noget.

åben en tilfældig mappe og tryk på menuen Funktioner og vælg mappeindstillinger
klik på fanebladet filtyper og find txt typen. der kan du så vælge hvilket program der skal åbne denne type filer.
Avatar billede mads-j Nybegynder
02. januar 2002 - 01:11 #10
Koldstar> vil du ikke mene at man kan lave det, så brugeren ikke skal vælge, men programmet selv laver det om?
Avatar billede cool-wil Nybegynder
02. januar 2002 - 01:14 #11
ja det spørger jeg også om, kan det ikke lade sig gøre, at kode noget, så programmet selv laver det?
Avatar billede steinmann Nybegynder
04. januar 2002 - 02:14 #12
Det kan gøres på 2 måder, den ene er ved at kalde nogle api kald som jeg ikke husker, den anden er ved at lave sine egne funktioner/procedurer der går ind og manipulerer de rigtige steder i registrerings databasen.

Jeg har lavet 2 funktioner, den ene registrerer programmet og den anden fjerner det igen:

procedure Registrerprog;
Const
  //Navnet på (Default)
  //Den nøgler der hedder (Default) i reg
  DefName = \'\';
var
  reg: TRegistry;
  OldVal: string;
begin
  try
  reg := TRegistry.Create;
  with reg do begin
    RootKey := HKEY_CLASSES_ROOT;
    if OpenKey(\'TXTFile\\shell\\open\\command\', False) then
    Oldval := ReadString(DefName);
    //Skriv den gamle værdi for en sikkerheds skyld
    WriteString(\'mybackup\', Oldval);
    //Skriv applikationens sti og %1 i (Default)
    WriteString(DefName, Application.exename +\' %1\')
  end;
  Except
  on E:ERegistryException do
  begin
    reg.Free;
    MessageDlg(E.Message, mtError, [MBOK], 0)
  end;
  end;
end;

procedure Unregistrerprog;
Const
  //Navnet på (Default)
  //Den nøgler der hedder (Default) i reg
  DefName = \'\';
var
  reg: TRegistry;
  OldVal, BackupVal: string;
begin
  try
  reg := TRegistry.Create;
  with reg do begin
    RootKey := HKEY_CLASSES_ROOT;
    if OpenKey(\'TXTFile\\shell\\open\\command\', False) then
    Oldval := ReadString(DefName);
    BackupVal := Readstring(\'mybackup\');
    //Slet den gamle værdi så ingen ved vi har været der
    DeleteValue(\'mybackup\');
    //genskab den gamle værdi
    WriteString(DefName, BackupVal)
  end;
  Except
  on E:ERegistryException do
  begin
    reg.Free;
    MessageDlg(E.Message, mtError, [MBOK], 0)
  end;
  end;
end;

Håber du kan bruge det!

Casper
Avatar billede steinmann Nybegynder
04. januar 2002 - 02:34 #13
Det skal dog lige siges at windows laver en del andre keys i registrerings databasen... men det har ingen effekt, i det omfang jeg har testet det, men det virker!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester