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

Помогите... Help...   Найти похожие ветки 

← →
X-Guest...   (2002-11-14 21:56) [0]

Как отлчить нажатие в CheckListBox на само слово (кот. напротив галочки), и на саму галочку....???


← →
Song ©   (2002-11-14 22:01) [1]

onClick/onClickCheck


← →
X-Guest...   (2002-11-14 23:31) [2]

Не знаю сработает ли... Потому что у меня стоит процедура на onclick и ты куда не тыкай везде она всплывет...хоть отметь галочку, хоть убери...

Вообщем событие OnClick должно срабатывать тогда, когда я жму непосредственно на слово. А если на галочку то только изменить Checked, что он делает и без меня.
А у меня нет этого разраничения... Что мне делать?


← →
apay ©   (2002-11-15 00:50) [3]

GetCursorPos, а потом проанализируй, где есть мышка, над галочкой аль нет.


← →
Axis_of_Evil ©   (2002-11-15 08:55) [4]


var
WasChecked: Boolean;

procedure CheckListBox1.OnClick
if (WasChecked = (not CheckBox1.Checked)) => кликнули галочку

WasChecked := CheckBox1.Checked;



← →
X-Guest...   (2002-11-15 21:43) [5]

в этом примере мы проверяем выделена она или нет галочкой...

[ ]Text1
[ ]Text2
[ ]Text3

если кликнули по "TextX" то одно событие
если кликнули по "[ ]" то ничего не делаем => оно само станет Checked "[X]"
Вот...
а у меня кликаешь на [] происходит и смена Checked и запускается процедура ItemClick...

ОНе ужели остается толоько рассматривать курсор над галочкой или нет???


← →
Gun Expert   (2002-11-15 22:37) [6]


> Song © (14.11.02 22:01)
> onClick/onClickCheck


Мысль правильная, позволю себе ее несколько уточнить:
- если щелкаешь на галке то вызываются onClickCheck, а затем
также и onClick (!!!);
- если просто в списке - только onClick.
Я поступаю так:

var WasClickCheck:boolean; //был ли вызван ClickCheck?
...
//в конце процедуры OnClickCheck:
procedure Tfrm1.CheckListBoxClickCheck(Sender: TObject);
begin
...
WasClickCheck:=true;
end;
...
//в теле процедуры OnClick
procedure Tfrm1.CheckListBoxClick(Sender: TObject);
begin
if WasClickCheck=true then
begin //выйти из процедуры
WasWasClickCheck:=false; exit;
end;
//иначе - обработка OnClick
...
end;

Удачи.



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

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



Память: 0.46 MB
Время: 0.012 c
3-92923
NiBL
2002-11-11 14:51
2002.11.28
FIBPlus


14-93182
[NIKEL]
2002-11-08 18:35
2002.11.28
Куда можно выложить утилитку?


1-93072
Infinity
2002-11-16 12:39
2002.11.28
Не могу удалить компонент с формы


14-93215
[NEW]Splinter
2002-11-10 10:58
2002.11.28
Запись в exe-шник...


3-92932
TDan
2002-11-12 02:29
2002.11.28
DBEdit




   Наверх