Avatar billede anold Nybegynder
18. april 2001 - 14:14 Der er 7 kommentarer og
1 løsning

Hvordan virker FindDialog1

Jeg vil gerne vide hvordan jeg får FindDialog1 til at søge i min RichEdit2
jeg har en kode der ser sådan her ud ( Taget fra Delpi4 hjælp):

procedure TForm1.FindOrd1Click(Sender: TObject);
begin
FindDialog1.Execute;
end;

procedure TForm1.FindDialog1Find(Sender: TObject);
var
  FoundAt: LongInt;
  StartPos, ToEnd: integer;
begin
  with RichEdit2 do
  begin
    { begin the search after the current selection if there is one }
    { otherwise, begin at the start of the text }

    if SelLength <> 0 then
      StartPos := SelStart + SelLength
    else

      StartPos := 0;

    { ToEnd is the length from StartPos to the end of the text in the rich edit control }

    ToEnd := Length(Text) - StartPos;

    FoundAt := FindText(FindDialog1.FindText, StartPos, ToEnd, [stMatchCase]);
    if FoundAt <> -1 then
    begin
      SetFocus;
      SelStart := FoundAt;
      SelLength := Length(FindDialog1.FindText);
    end;
  end;
end;

men der sker ikke noget når jeg trykker på knappen Find Next
Hvad er der galt
Anold
Avatar billede borrisholt Novice
18. april 2001 - 14:19 #1
Du må gøre noget andet forkert fordi det kode du giver her virker !

Jens B
Avatar billede anold Nybegynder
18. april 2001 - 14:21 #2
det virker som om at jeg aldrig læser procedure FindDialog1Find
Anold
Avatar billede martinlind Nybegynder
18. april 2001 - 14:21 #3
Fra online hjælpen :

Occurs when the user clicks the Find Next button.

property OnFind: TNotifyEvent;

Description

Write an OnFind event handler to perform the requested search when the user clicks Find Next in the dialog. Use the Options flags to determine how the search is conducted.

/Martin
Avatar billede martinlind Nybegynder
18. april 2001 - 14:23 #4
Du skal nok lige huske og sætte OnFind Eventen til din Procedure FindDialog1Find ( designtime via obj-inspector )

/Martin
Avatar billede borrisholt Novice
18. april 2001 - 14:24 #5
Oooh ja martin du har en pointe der ... det der kode skal implemteres som en onfind event...
Avatar billede martinlind Nybegynder
18. april 2001 - 14:27 #6
yeps, det er jo ikke nok at cutte og paste
Avatar billede anold Nybegynder
19. april 2001 - 07:38 #7
Kan det ikke lade sig gøre at bruge FindDialog1 med et Memo1 i stedet for en RichEdit2 ??
anold
Avatar billede martinlind Nybegynder
19. april 2001 - 09:58 #8
Der er ikke de samme søge mulighedder med en Memo comp. men alt kan jo lade sig gøre ( I en gasovn *G* )
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