Вниз
Скачать: CL | DM;

ActiveControl.Handle   Найти похожие ветки 

 
Eli   (2004-01-29 12:50) [0]

Мастера, подскажите, пожалуйста, как определить выделен ли текст в одной из ячеек StringGrid, чтобы потом скопировать его в буфер с помощью

SendMessage (ActiveControl.Handle, WM_Cut, 0, 0);


 
Zergling ©   (2004-01-29 12:56) [1]

Selected... ?


 
Eli   (2004-01-29 13:05) [2]

Пока не понял :(


 
Zergling ©   (2004-01-29 13:20) [3]

Метод StringGrid1.Selection
Определяет какой диапазон ячеек выделен
Можно воспользоваться событиями
OnGetEditText (наверно лучше его)
OnSetEditText
OnSelectCell

OnGetEditText (наверно лучше его)
OnSetEditText
срабатывают если в свойствах Options.goEditing := true;


 
Eli   (2004-01-29 13:49) [4]

Выделил одну ячейку, выделил в ней текст, щелкнул по правой кнопке мышки и получил PopupMenu вот там у меня есть MenuItem "Вырезать"
Если длина выделенного текста равна 0, эта опция должна быть Enabled=false, но как определить длину выделенного текста?
В RichEdit есть SelLength, а что есть в StringGrid?
И как обратиться к ActiveControll, чтобы получить выделенный текст или его длину?


 
Zergling ©   (2004-01-29 13:57) [5]

Хм... Такого напрямик незнаю. Наверно немного в обход для редактирования ячейки подсовывать контрол TEdit (поищи по форуму как в грид контролы подсовывать, обсуждалось уже както раз). У этого TEdit и определить выделенный текст.


 
MBo ©   (2004-01-29 14:10) [6]

type
TXGrid=class(TStringGrid);

procedure TForm1.Button1Click(Sender: TObject);
var
XG:TXGrid;
begin
XG:=TXGrid(StringGrid1);
if XG.InplaceEditor<>nil then
if XG.InplaceEditor.SelLength<>0 then
Edit1.Text:=XG.InplaceEditor.SelText;
end;



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.047 c
3-29242
N&N
2004-01-19 09:16
2004.02.10
Перенос данных их Excel в базу данных


1-29315
Mr. X
2004-01-30 08:51
2004.02.10
CD-ROM


6-29498
alt7
2003-12-05 15:39
2004.02.10
Помогите примерчиком по Indy POP3


3-29276
3APA3A
2004-01-16 23:47
2004.02.10
Как сделать такой запрос...


1-29389
неважно
2004-02-01 18:42
2004.02.10
Как создать одну процедуру на несколько объектов?




   Наверх