Главная страница
    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.05 c
1-1079634833
Script
2004-03-18 21:33
2004.04.11
Работа с GroupBox


3-1079364117
cat
2004-03-15 18:21
2004.04.11
Unicode коды в базах MS Access


3-1078931138
Goida
2004-03-10 18:05
2004.04.11
Выборка в выборке


7-1073352036
Bonial
2004-01-06 04:20
2004.04.11
Блокировка KeyBoard и Mouse с возможностью разблокировки


1-1082906276
Seldon
2004-04-25 19:17
2004.04.11
Информация о Themes.pas





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