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

редактирование ListView   Найти похожие ветки 

 
ther   (2008-12-09 17:08) [0]

вроде поискал не нашел нужной темы...
проблема следующая...мне нужно что бы можно было кликать в ListView по всем ячейкам(и изменять их содержимое) а не только первую...можно ли этокак то сделать?


 
Rouse_ ©   (2008-12-09 17:15) [1]

В смысле? В режима Report редактировать содержимое сабитемов? При переключении в режим редактирования получай хэндл инплейсэтитора посредством отправки сообщения LVM_GETEDITCONTROL и выставляй ему нужную позицию... Но только в этом случае придется перехватывать момент окончания редактирования и подставлять измененный текст в нужное место.


 
ther   (2008-12-09 17:22) [2]

ага в режиме Report редактировать содержимое сабитемов...попробую поискать..спасибо за наводку..но если можно по подробней...вдруг не найду


 
Rouse_ ©   (2008-12-09 17:47) [3]

Вот пример получения текста с активного инплейсэдитора в TreeView и ListView контролах, дальше развивай по аналогии:

function GetEditControlText(Control: TWinControl): String;
var
 GetHandleMessage: DWORD;
 EditControlHandle: THandle;
begin
 // uses CommCtrl;
 Result := "";
 GetHandleMessage := 0;
 if (Control is TTreeView) then
   GetHandleMessage := TVM_GETEDITCONTROL
 else
   if (Control is TListView) then
     GetHandleMessage := LVM_GETEDITCONTROL;
 if GetHandleMessage = 0 then Exit;
 EditControlHandle := SendMessage(Control.Handle, GetHandleMessage, 0, 0);
 if EditControlHandle <= HINSTANCE_ERROR then Exit;
 SetLength(Result, SendMessage(EditControlHandle, WM_GETTEXTLENGTH, 0, 0) + 1);
 SendMessage(EditControlHandle, WM_GETTEXT, Length(Result), DWORD(@Result[1]));
end;

procedure TForm1.SpeedButton1Click(Sender: TObject);
begin
 if TreeView1.IsEditing then
   ShowMessage("Текст внутри редактора: " + GetEditControlText(TreeView1));
 if ListView1.IsEditing then
   ShowMessage("Текст внутри редактора: " + GetEditControlText(ListView1));
end;



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

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



Память: 0.45 MB
Время: 0.011 c
15-1228112203
Ламо777
2008-12-01 09:16
2009.01.25
Геометрия, помогите освежить...


6-1196354544
Crystalis
2007-11-29 19:42
2009.01.25
как перехватить пакетик ? ;)


1-1207386579
Da109
2008-04-05 13:09
2009.01.25
HTMLViewer


15-1227708896
Поросенок Винни-Пух
2008-11-26 17:14
2009.01.25
Богатства сомали


2-1228769620
programmer90
2008-12-08 23:53
2009.01.25
F7 vs F8




   Наверх