Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.01.25;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.018 c
15-1228071771
{RASkov}
2008-11-30 22:02
2009.01.25
Выбор структуры приложения с использованием пакетов


3-1213733259
Ulti
2008-06-18 00:07
2009.01.25
БД paradox


2-1228889359
mfender
2008-12-10 09:09
2009.01.25
Ключи реестра в перечислимом свойстве


2-1228997565
palpalich
2008-12-11 15:12
2009.01.25
Стеки и очереди в Turbo Pascal 7.0


1-1207310024
TStas
2008-04-04 15:53
2009.01.25
Как добавить в ActionList Action?