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

Вниз

SendMessage, как мне объеденить координаты в одно число?   Найти похожие ветки 

 
3abaBHoe JIaMo   (2004-02-04 22:05) [0]

Есть такая команда, как SendMessage, ну вы знаете ;)

Вот мне надо заставить работать это:


SendMessage(MyHandle, WM_LBUTTONDOWN, 0, Position);

что нужно сделать с переменной Position, если нужные мне координаты это X и Y.

Я уже нашел что:

WM_LBUTTONDOWN  
fwKeys = wParam;        // key flags
xPos = LOWORD(lParam);  // horizontal position of cursor
yPos = HIWORD(lParam);  // vertical position of cursor

Что значит два числа в lParam? Это как так запихать?


 
Юрий Зотов ©   (2004-02-04 22:09) [1]

var
 X, Y: word;
...
 (Y shl 16) or X


 
dr Tr0jan ©   (2004-02-05 04:18) [2]

А Хэлп по WinAPI сложно почитать?
Позиция передается пременной lParam, размер которой 32-бита. Т.к. она очень велика - 0..4294967295, то программисты решили ее разбить на два "слова" (младшее и старшее), каждое по 16 бит, т.е. 0..65535. Размер одного слова позволяет хранить в себе довольно большое число, например горизонталную позицию курсора. Таким образом: xPos = LOWORD(lParam); // - младшее слово параметра lParam;
yPos = HIWORD(lParam);  // старшее слово параметра lParam;


 
Wizard_Ex ©   (2004-02-05 06:26) [3]

То есть так и присвоить:  ?

Position:=(Y shl 16) or X

сенкс


 
Zergling ©   (2004-02-05 06:29) [4]

>> То есть так и присвоить:  ?

Попробуй, узнаешь!


 
3abaBHoe JIaMo   (2004-02-05 23:18) [5]

Спасибо конечно, был бы у меня еще хелп по вин апи я бы тут не сидел. А шоб присвоить мне лично пришлось найти команду MakeLParam(X, Y) - ВОТ ЧТО Я ХОТЕЛ УЗНАТЬ.

тоесть Position (которая Int64) надо присвоить MakeLParam(X, Y) и все.


 
Anatoly Podgoretsky ©   (2004-02-05 23:42) [6]

Ну нельзя же без Дельфи писать, конечно можно, но очень тяжело.


 
Юрий Зотов ©   (2004-02-06 11:01) [7]

Пожалуй, скоро дойдет то того, что операцию A+B народ не сможет выполнить без библиотечной функции Add(A, B). Да и ее будут искать на форумах.


 
Polevi ©   (2004-02-06 16:22) [8]

MAKELONG



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

Форум: "WinAPI";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.04 c
1-1082447654
Top100
2004-04-20 11:54
2004.04.11
Уничтожение формы


6-1079527514
AlexeyITN
2004-03-17 15:45
2004.04.11
Ping с кривым руками:)


1-1082482837
Yegorchic
2004-04-20 21:40
2004.04.11
Goto


1-1080056808
Andrew
2004-03-23 18:46
2004.04.11
Model Family Stepping???


3-1079282561
Doctor Deejay
2004-03-14 19:42
2004.04.11
AnsiQuotedStr





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский