memo

0

Cześć!

Jak do komponentu memo wstawić jakiś tekst aby kursor po wstawieniu
tekstu w memo był po środku wstawionego tekstu (troche głupio brzmi)
Np. (miejsce kursora)

PS: Robie edytor www

Za wszelką pomoc serdeczne dzięki!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

0

sorry pochrzaniło mi się.

Np. tekst(miejsce kursora)tekst

0

Jezeli dobrze cie zrozumialem :-) to wystarczy chyba zrobic cos takiego:

memo1.SelText:='jakis text'--pozdrawiam PEDROS {hello}
Delphi6

0

Chyba chodzi o właściwość selstart.---------------------------
Delphi 6

Pozdrówka

0

Pedros napisał:
Jezeli dobrze cie zrozumialem :-) to wystarczy chyba zrobic cos takiego:

memo1.SelText:='jakis text'

źle mnie zrozumiałeś!
chodzi mi oto żeby kursor był pomiędzy słowem "jakiś" a "tekst",
a seltext to to ja wiem!

0

o to chodzi ?

var
Start: Integer;
S: String;
begin
S := 'jakis tekst';
with Memo1 do
begin
SetFocus;
Start := SelStart;
SelText := S ;
SelStart := Start + (Length(S) div 2);
end;
end;

---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

var
S:string;
q,w:integer;
begin
S:='texttext';
Memo1.Lines.Add(S);
q:=Length(Memo1.Lines.Text);
w:=(Length(S)div 2);
Memo1.SelStart:=q-w-2;//te dwa to #10#13
Memo1.SelLength:=0;
Memo1.SelText:='';
end;

Tak pasuje?

Może podałbyś metodę dodawania tekstu to mógłbym dokładnie napisać jak wstawić w środek. (naprawdopodobniej podciągniesz to pod Buttona, więc żeby zobaczyć kursor przejdź tabem do memo) :-) --Pomoc i analiza źródeł wszystko czego potrzebujesz ( no i może odrobinę logicznego myślenia)

0

Dryobates napisal:

(naprawdopodobniej podciągniesz to pod Buttona, więc żeby zobaczyć kursor przejdź tabem do memo)

a nie wystarczy dopisac takiej oto linijki :
Memo1.SetFocus;
? :)---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

Dzięki Wam wszystkim!!!!

Wszystko działa!

0

LKS napisał:
&gta nie wystarczy dopisac takiej oto linijki :
&gtMemo1.SetFocus;

Można :) , ale ja nie wiedziałem czy on chce widzieć migający kursor czy tylko ustawić w odpowiednim miejscu żeby można było pisać :D Jesteś szybszy ode mnie LKS :D Tak to bywa jak się robi 10 rzeczy naraz na kompie, wszystko zaczyna i zanim skończy to już odpowiedź jest--Pomoc i analiza źródeł wszystko czego potrzebujesz ( no i może odrobinę logicznego myślenia)

0

Dryobates napisal:

Tak to bywa jak się robi 10 rzeczy naraz na kompie, wszystko zaczyna i zanim skończy to już odpowiedź jest

hehe znam ten bol :)
---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

LKS napisał:
&gthehe znam ten bol :)
&gt
Pół biedy jeżeli to wszystko na moim kompie i dla przyjemności :D Gorzej jak mnie czasami sąsiedzi rozchwytuj żeby im pomóc coś naprawić, a przy tym trzeba inne rzeczy robić :D (w tym momencie najczęściej mówię że mnie nie ma )--Pomoc i analiza źródeł wszystko czego potrzebujesz ( no i może odrobinę logicznego myślenia)

0

autor pytania napisał:
Dzięki Wam wszystkim!!!!

Wszystko działa!

Jednak nie wszystko działa! Na memo to działało, ale ja tworze edytor www
na synedit (ściągnięty z waszej strony) i pojawia mi się jeden error
Undeclared identifier: 'SelStart'
Na początku myślałem że se poradzę, ale później postanowiłem napisać tutaj.
nie wiem co robić. pomóżcie!

z góry dziękuję!

0

no rzeczywiscie komponent SynEdit nie posiada SelStart
dlatego lepiej poszukaj komponentu SynMemo :)

ps. probowalem bawic sie z EM_GETSEL i EM_SETSEL ale jakos nic nie wychodzilo :(---=-=[ Delphi 3, 6 ]=-=-
-=-=-==[ LKS ]==-=-=-
-=[ [email protected] ]=-

0

LKS napisał:
no rzeczywiscie komponent SynEdit nie posiada SelStart

dlatego lepiej poszukaj komponentu SynMemo :)

ps. probowalem bawic sie z EM_GETSEL i EM_SETSEL ale jakos nic nie wychodzilo :(

Dzięki LKS za próby!!!

Zobacze czy mi pójdzie na synmemo.

Jeszcze raz dziękuję!

0

Poszło!

0

znalazłem jednak w Twoim kodzie LKS błąd!
ten tekst z kursorem jak jest przy krawędzi to działa np.
tekst(kursor)tekst
ale jak ten tekst jest wstawiany dalej od brzegu...
(kursor) teksttekst
to kursor wcale nie jest po środku tego wstawianego tekstu!

ostateczne pytanko: jak poprawić ten błąd????????

Dzięki za wszelką pomoc!!!!!!!!!!!!!!!!!!!!!!!!!!!!

PS: Jestem początkującym programistą więc tu często pisze.

1 użytkowników online, w tym zalogowanych: 0, gości: 1