Avatar billede stoiss Nybegynder
11. november 2005 - 13:00 Der er 5 kommentarer og
1 løsning

memo1 line number?

hejsa allesammen... jeg har lavet en txt editore, som jeg vil bruge til at kode i, men vil gerne ha at den skriver hvilken linie man er på ude i siden, ligesom i Dreamweaver ..


nogen der kan hjælpe mig lidt med det måske?:)

.S
Avatar billede stone Forsker
11. november 2005 - 19:21 #1
en anden mulighed kunne være at vise det i statusbar som Frontpage gør....

implementation

{$R *.DFM}

function RichRow(m: TCustomMemo): Longint;
begin
  Result := SendMessage(m.Handle, EM_LINEFROMCHAR, m.SelStart, 0);
end;

function RichCol(m: TCustomMemo): Longint;
begin
  Result := m.SelStart - SendMessage(m.Handle, EM_LINEINDEX, SendMessage(m.Handle,
    EM_LINEFROMCHAR, m.SelStart, 0), 0);
end;


procedure TForm1.Memo1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
statusbar1.Panels[0].Text := Format('%d : %d', [RichCol(Form1.Memo1), RichRow(Form1.Memo1)]);

end;

procedure TForm1.FormCreate(Sender: TObject);
begin
with memo1.CaretPos do
    statusbar1.Panels[0].Text := Format('(%d, %d)',[X+1,Y+1])

end;
Avatar billede stone Forsker
11. november 2005 - 19:25 #2
how... ændringer i tekstlinier....mangler lige

procedure TForm1.Memo1Change(Sender: TObject);
begin
with memo1.CaretPos do
    statusbar1.Panels[0].Text := Format('(%d, %d)',[X+1,Y+1])
end;
Avatar billede stoiss Nybegynder
13. november 2005 - 21:07 #3
hey, undskyld jeg ikke lige har været her, men det har jo været weekend ;) hvis du forstår en lille en :) any way..

jeg skulle ha brugt det oppe på skolen, men stoppede i fredags og har ikke lige tid til at rode med det i den nærmeste fremtid, men hvis du kan love mig at det virker kan du smide et svar og så får du point:)

.S
Avatar billede stone Forsker
13. november 2005 - 21:34 #4
jeg kan garanterer den virker.

her er lige en lille ændring hvis du vil have vist linie og kolonne tekst i statusbar

procedure TForm1.Memo1KeyUp(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
statusbar1.Panels[0].Text := Format('Linie %d : Kolonne %d', [RichRow(Form1.Memo1), RichCol(Form1.Memo1)]);

end;

procedure TForm1.Memo1Change(Sender: TObject);
begin
with memo1.CaretPos do
    statusbar1.Panels[0].Text := Format('Linie( %d, Kolonne %d)',[X+1,Y+1])
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
with memo1.CaretPos do
    statusbar1.Panels[0].Text := Format('Linie(%d, Kolonne %d)',[X+1,Y+1])
end;

procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
with memo1.CaretPos do
    statusbar1.Panels[0].Text := Format('Linie(%d, Kolonne %d)',[X+1,Y+1])
end;
Avatar billede stoiss Nybegynder
13. november 2005 - 21:36 #5
okay mange tak :)ved du hvor jeg kan hente en "pakke" med alle de der mange filer man ellers skalhente enkeltvis, så jeg kan få programmet her hjemme ..

her er point
Avatar billede stone Forsker
13. november 2005 - 23:18 #6
trial versioner er kun muligt at få hos:

http://www.borland.com/downloads/download_delphi.html
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