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

Вниз

Как определить позицию курсора мышки на форме   Найти похожие ветки 

 
Pomestnik   (2005-01-01 14:26) [0]

Как определить позицию курсора мышки на форме??
Ну например есть форма 300х300 Если курсор находится в е центре этой
формы, то выводятся координаты курсора относительно формы а не экрана


 
Vaitek ©   (2005-01-01 15:41) [1]

Попробуй в хелпе поискать CursorPos или что-то типа того.


 
Sirex   (2005-01-01 15:59) [2]

если это обычная форма то в событии OnMouseMove формы
параметры x и y. Но если надо определить в  другом месте, то
var p : TPoint;
begin
GetCursorPos(p);
Dec(p.x,Form1.Left+FRMW);// +4 ширина
Dec(p.y,Form1.Top+FRMH);
Caption := Format("%d %d",[p.x,p.y]);
end;
Вместо FRMW - подставь 4 (или другое значение в зависимости от ширины рамки формы, т.к. свойство left формы относительно его левого края в окне, а не левого края рабочей части),
Вместо FRMH - кажеться 23 (ширина заголовка)
Вообщем можешь подогнать, не знаю как по-другому
Естественно, если formStyle = bsNone, то FRMW и FRMH = 0.


 
abcd   (2005-01-01 19:03) [3]

procedure TForm1.Timer1Timer(Sender: TObject);
var p : TPoint;
begin
GetCursorPos(p);
Label1.Caption :=IntToStr(p.X-ClientOrigin.X)+" X "+IntToStr(p.Y-ClientOrigin.Y);
end;


 
grom   (2005-01-01 20:24) [4]

procedure WndProc(var Msg : TMessage); override;
...
procedure TForm1.WndProc(var Msg : TMessage);
begin
Label1.Caption :=IntToStr(Mouse.CursorPos.X-ClientOrigin.X)+" X "+IntToStr(Mouse.CursorPos.Y-ClientOrigin.Y);
inherited;
end;


 
Polevi ©   (2005-01-02 11:51) [5]

ScreenToClient, ClientToScreen


 
Andrewp ©   (2005-01-04 20:51) [6]

procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin

end;

x и y и есть позиция курсора на форме



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

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

Наверх




Память: 0.45 MB
Время: 0.041 c
3-1106245115
Alexandr--
2005-01-20 21:18
2005.02.20
VarbinaryToVarchar ?


1-1107773373
__oleg
2005-02-07 13:49
2005.02.20
В DLL не работает процедура со строковыми параметрами


1-1107339808
Igor_thief
2005-02-02 13:23
2005.02.20
ЧТо за компонент или как добавить крестик для развертывания?


14-1107244946
Jaxtor
2005-02-01 11:02
2005.02.20
Запуск CGI приложения и обработка его результата


8-1099053979
dedMazDie
2004-10-29 16:46
2005.02.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
Английский Французский Немецкий Итальянский Португальский Русский Испанский