Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.05.23;
Скачать: CL | DM;

Вниз

Приветствую Мастеров! Очень нужная задача, есть.   Найти похожие ветки 

 
IronHawk ©   (2002-05-09 01:05) [0]

Хелп, плз.
Есть форма в ней ЛистБокс и Мемо.
В ЛистБоксе немерянно строк (или 20, как кому удобней), Надо по ДаблКлику в строке ЛистБокса копирить её текст в Мемо,
после, если поставить курсор в середину или ещё где, набора символов перенесённых из ЛистБокса а потом БаблКликнуть в ЛистБоксе снова в другой строке, то чтоб новый текст из строки ЛистБокса сунулся туда где стоял курсор в Мемо, как Вы помните где-то в середине или около того!
Очень нуна, решить такой трудный задача!


. . . заранне благодарен.


 
Almaz ©   (2002-05-09 01:18) [1]

Наиболее простой вариант:

uses ..., Сlipbrd;

procedure TForm1.ListBox1DblClick(Sender: TObject);
begin
Clipboard.SetTextBuf(PChar(Listbox1.Items[Listbox1.ItemIndex]));
Memo1.PasteFromClipboard;
end;


Удачи.


 
IronHawk ©   (2002-05-09 02:00) [2]


> Almaz © (09.05.02 01:18)
> Наиболее простой вариант:
>
> uses ..., Сlipbrd;

Спасибо, но только не клипборд ПЛЗ!


 
ION T ©   (2002-05-09 02:22) [3]

Менее простой вариант:

procedure TForm1.ListBox1DblClick(Sender: TObject);
var tmp: string;
SelStart: integer;
begin
tmp:= memo1.Lines.GetText;
SelStart:= memo1.SelStart+ 1;
insert(ListBox1.Items[ListBox1.ItemIndex],
tmp, SelStart);
memo1.Lines.SetText(PChar(tmp));
memo1.SelStart:= SelStart;
end;CODE>

Чем больше в мемо текста, тем медленнее будет работать.....можно конечно не копировать весь текст, а находить строку в которой находится символ с индексом SelStart методом сравнивания длин строк до нахождения нужной, но если текста всё-же много, а вставить надо в конец, то всё равно будет тормозить......


 
ION T ©   (2002-05-09 02:25) [4]

Шо стало с тегом меня не спрашивайте....


 
VID ©   (2002-05-09 02:29) [5]

to ion t: а нельзя сразу : insert (listbox1.items[listbox1.itemindex], memo1.text, selstart ) ?


 
IronHawk ©   (2002-05-09 22:50) [6]

А кто знает как эту задачку решить в 3-4 строчки через WinAPI?


 
Song ©   (2002-05-09 22:52) [7]

Видимо только Вы...


 
IronHawk ©   (2002-05-09 23:36) [8]


> Song © (09.05.02 22:52)
> Видимо только Вы...

Не, я серьёзно.
Мне сказали что так можно сделать, но не сказали как именно :-(.


 
[NIKEL] ©   (2002-05-09 23:45) [9]

через буфер обмена...


 
IronHawk ©   (2002-05-10 00:12) [10]


> [NIKEL] © (09.05.02 23:45)
> через буфер обмена...

Через WinAPI и БЕЗ буфера обмена !


 
McSimm ©   (2002-05-10 10:13) [11]

Memo1.Perform(EM_REPLACESEL, 0, Integer(PChar(ListBox1.Items[ListBox1.ItemIndex])))


 
IronHawk ©   (2002-05-10 10:51) [12]


> McSimm © (10.05.02 10:13)
> Memo1.Perform(EM_REPLACESEL, 0, Integer(PChar(ListBox1.Items[ListBox1.ItemIndex])))

Cамо оно, спасибо.
Круто, самое классное решение!
Спасибо!!!



Страницы: 1 вся ветка

Текущий архив: 2002.05.23;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.013 c
1-73315
Deus
2002-05-12 01:16
2002.05.23
проблемы с hint ом


7-73428
skovorodka
2002-02-23 18:36
2002.05.23
Кто знает как промнамно изменять параметры Bios ? (или, если можно перепрошить)


3-73080
kimblch
2002-04-29 03:24
2002.05.23
ГЛЮК с LookupFields ????


7-73409
perov
2002-02-24 11:28
2002.05.23
русификация Командной строки в вин2000


14-73392
Draculenok
2002-04-15 09:21
2002.05.23
бесплатные звонки