Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.09.20;
Скачать: [xml.tar.bz2];

Вниз

Как правильно вызвать 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.006 c
15-1248178884
картман
2009-07-21 16:21
2009.09.20
Структура БД.


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


3-1227136044
Petr V. Abramov
2008-11-20 02:07
2009.09.20
forall и bulk collect into


1-1215171753
asafr
2008-07-04 15:42
2009.09.20
InterBase и FreeLibrary


4-1217601873
Bakl
2008-08-01 18:44
2009.09.20
Возможно ли средствами Делфи определить модель устройства.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский