procedure ThiMTStrTbl._OnSelState;
var
dt, Data: TData;
begin
dtNull(Data);
TRY
if (Newstate = 3) or (Newstate = 1) then
begin
if FEnableOnClick then _hi_OnEvent(_event_onClick, IdxFrom);
_hi_OnEvent(_event_onSelect, IdxFrom);
exit;
end;
if GMouse and (OldState = 0) then
begin
Sender.LVItemStateImgIdx[IdxFrom] := 0;
exit;
end;
if (Newstate = $3000) and ((OldState = $1000) or (OldState = $2000)) then
dtInteger(dt, 2)
else if (Newstate = $2000) and ((OldState = $1000) or (OldState = $3000)) then
dtInteger(dt, 1)
else if (Newstate = $1000) and ((OldState = $2000) or (OldState = $3000)) then
dtInteger(dt, 0)
else
exit;
dtInteger(Data, IdxFrom);
Data.ldata := @dt;
if GMouse then _hi_onEvent_(_event_onCheck, Data);
FINALLY
GMouse := false;
END;
end;
--- Добавлено в 2024-12-27 02:41:41
Если устроит, то пофиксю на SVN