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

Вниз

Константы MK_CONTROL и MK_SHIFT   Найти похожие ветки 

 
AZ ©   (2003-03-04 05:49) [0]

Делаю в OnCreate формы Myform
Application.OnMessage:=MouseMessages;
Пристыковываю

procedure Myform.MouseMessages(var Msg: TMsg; var Handled: boolean);
case Msg.message of
WM_LBUTTONDOWN: begin
MLButtonDown(Msg.wParam, Msg.pt);
end;

end;
end;

procedure Myform.MLButtonDown(Keys: longint; Pos: TPoint);
begin
case Keys of
//Понимает
5: Label1.Caption:="ShiftDown"; // Но не понимает MK_CONTROL
//Понимает
9: Label1.Caption:="ControlDown"; // Но не понимает MK_SHIFT
end;

end;

Компилируется с константами MK_CONTROL и MK_SHIFT нормально, но их не воспринимает.
В чем фокус?


 
AZ ©   (2003-03-04 05:55) [1]

Прошу извинения, следует читать так:
//Понимает
5: Label1.Caption:="ShiftDown"; // Но не понимает MK_SHIFT
//Понимает
9: Label1.Caption:="ControlDown"; // Но не понимает MK_CONTROL
end;


 
Anatoly Podgoretsky ©   (2003-03-04 09:29) [2]

Их надо предварительно объявить где нибудь.


 
icWasya ©   (2003-03-04 10:39) [3]

unit windows;

const
{ Key State Masks for Mouse Messages }
{$EXTERNALSYM MK_LBUTTON}
MK_LBUTTON = 1;
{$EXTERNALSYM MK_RBUTTON}
MK_RBUTTON = 2;
{$EXTERNALSYM MK_SHIFT}
MK_SHIFT = 4;
{$EXTERNALSYM MK_CONTROL}
MK_CONTROL = 8;
{$EXTERNALSYM MK_MBUTTON}
MK_MBUTTON = $10;


 
AZ ©   (2003-03-04 12:38) [4]

>Anatoly Podgoretsky © (04.03.03 09:29)
Но раз компилятор не ругается, значит эти константы уже объявлены?

>icWasya © (04.03.03 10:39)
Я видел эти объявления.
Почему-то на MK_RBUTTON = 2 никакой реакции.


 
AZ ©   (2003-03-04 16:40) [5]

Up


 
icWasya ©   (2003-03-04 16:48) [6]

надо не

Keys = MK_RBUTTON

а

(Keys and MK_RBUTTON) <>0



 
Anatoly Podgoretsky ©   (2003-03-04 17:04) [7]

AZ © (04.03.03 12:38)
Насчет ругается или нет не было ни слова, а так они объявлены в Windows, но цифровые коды у тебя не соответствуют этим константам, надо использовать логическое сложение нескольких флагов.


 
Anatoly Podgoretsky ©   (2003-03-04 17:05) [8]

Извиняюсь было, не заметил.


 
AZ ©   (2003-03-05 02:03) [9]

Спасибо.



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
1-53968
new prg
2003-03-06 06:41
2003.03.17
Ввод и вывод данных при помощи текстового файла


3-53887
Akim2
2003-02-24 18:22
2003.03.17
Помогите чайнику с определением поля


1-54048
Demonist
2003-03-05 00:05
2003.03.17
Av


14-54231
RIMMER
2003-02-24 23:35
2003.03.17
WinAMP + WinXP + ASUS CDS-500/A ??


3-53870
Igor Kashtanov
2003-02-24 01:49
2003.03.17
Кодировка