Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.09.20;
Скачать: CL | DM;

Вниз

Как правильно вызвать OnMouseDown?   Найти похожие ветки 

 
novai   (2009-07-17 06:11) [0]

заголовок стандартный:
procedure TSetupBox.Button12MouseDown(Sender: TObject;
 Button: TMouseButton; Shift: TShiftState; X, Y: Integer);


пытаюсь вызвать:
ProgramBox.Button12MouseDown(ProgramBox, mbLeft, ssLeft, 1, 1);
ругается на ssLeft! почему, ведь тип правилный? Как тогда првильно?


 
KilkennyCat ©   (2009-07-17 07:29) [1]

[ssShift]


 
KilkennyCat ©   (2009-07-17 07:35) [2]


> ведь тип правилный?


в справке, кстати, написано, что это за тип. И тогда будет нэправилный ;)


 
novai   (2009-07-17 07:41) [3]


> [ssShift]

это же нажат шифт?
и почему [] ? объясните пожалуйста...


 
KilkennyCat ©   (2009-07-17 07:44) [4]


> это же нажат шифт

да без разницы

> и почему []


Ты подумай, как ты напишешь одновременное нажатие шифта и альта... тогда поймешь, почему [] раз уж справку все-таки не хочешь глянуть.


 
novai   (2009-07-17 07:50) [5]


> раз уж справку все-таки не хочешь глянуть

я ее смотрел, но понял как, либо либо.
а почему без разницы?


 
KilkennyCat ©   (2009-07-17 08:02) [6]


> я ее смотрел, но понял как, либо либо

TShiftState = set of (ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble);

в твоем способе обращения с Set получается, что если захочется узнать, что нажато, ты напишешь if (ssLeft = Shift) then ... что крайне неверно. Верно if (ssLeft in Shift) then ...


> а почему без разницы?

потому что это пример. я указал на несоответствие типов, а что именно внутри - без разницы. хоть шифт, хоть лефт, хоть все вместе (на что снова обращаю внимание: там можно указать не один параметр).


 
KilkennyCat ©   (2009-07-17 08:06) [7]

дополню: если ты таким образом хотел указать только лишь, что событие вызвано, как нажатие левой кнопки мыши без всяких хитростей, то можешь просто [], ибо ты и так уже определил  Button: TMouseButton


 
novai   (2009-07-17 08:09) [8]

[6][7] спасибо за исчерпывающий ответ...



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

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

Наверх




Память: 0.48 MB
Время: 0.011 c
1-1215755404
МистерТ
2008-07-11 09:50
2009.09.20
Подмена Application динамической библиотеки


15-1248160976
4got10
2009-07-21 11:22
2009.09.20
Не пашет клава%)


3-1227085610
pavel_guzhanov
2008-11-19 12:06
2009.09.20
Странно зависает запрос.


1-1215616092
misha_gr
2008-07-09 19:08
2009.09.20
Контекстное меню "Открыть с помощью..."


2-1247657267
Алексей85
2009-07-15 15:27
2009.09.20
Позиция в DBGrid