Текущий архив: 2005.11.06;
Скачать: CL | DM;
ВнизКак в ListView с CheckBox отловить событие установки галки? Найти похожие ветки
← →
Mishenka (2005-10-12 14:44) [0]Как в ListView с CheckBox = True отловить событие установки и снятия галки?
← →
Del_programmer © (2005-10-12 14:50) [1]Checked:=true - есть галя
Checked:=false - нет гали
← →
begin...end © (2005-10-12 18:59) [2]> Mishenka (12.10.05 14:44)
Либо назначить соответствующий обработчик OnClick или OnMouseDown, в котором вызывать GetHitTestInfoAt и проверять, есть ли в полученном множестве значение htOnStateIcon, либо отслеживать и обрабатывать нотификации LVN_ITEMCHANGED, отправляемые родительскому окну.
← →
GuAV © (2005-10-12 19:06) [3]TVInfo: TTVHitTestInfo;
procedure TForm1.TreeViewMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
TVInfo.pt := Point(X, Y);
TControl(Sender).Perform(TVM_HITTEST, 0, LPARAM(@TVInfo));
end;procedure TForm1.TreeViewClick(Sender: TObject);
begin
if TVinfo.flags and TVHT_ONITEMSTATEICON <> 0 then
HandleCheckChange; // изменение состояния чекбокса
end;
← →
begin...end © (2005-10-12 19:12) [4]> GuAV © (12.10.05 19:06) [3]
Всё же лучше воспользоваться уже готовым методом GetHitTestInfoAt. И он сам сделает то же самое (как для ListView, так и для TreeView).
Страницы: 1 вся ветка
Текущий архив: 2005.11.06;
Скачать: CL | DM;
Память: 0.44 MB
Время: 0.043 c