Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
1 / 1 / 4
Регистрация: 09.09.2013
Сообщений: 112
1

Канвас, по клику происходит вывод текста (координаты) в том месте где был клик

14.10.2014, 17:02. Показов 1664. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Канвас, по клику происходит вывод текста(координаты) в том месте где был клик. Сделал, но координаты пишутся не правильные, не могу понять почему!?
код
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
procedure TForm1.Image1Click(Sender: TObject);
 
var
MyMouse: TMouse;
x,y:integer;
begin
with Form1.Canvas do begin
Font.Name := 'Tahoma';
Font.Size := 20;
Brush.Style := bsClear;
end;
 Form1.Caption := inttostr(MyMouse.CursorPos.x) + 'Õ ' +inttostr(MyMouse.CursorPos.y);
image1.Canvas.TextOut(MyMouse.CursorPos.x,MyMouse.CursorPos.y,inttostr(MyMouse.CursorPos.x) + 'Õ ' +inttostr(MyMouse.CursorPos.y));
 
end;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.10.2014, 17:02
Ответы с готовыми решениями:

как при каждом клике в любой точке BODY, создать DIV в том же месте где был клик
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> ...

ПОявление image в том месте где был щелчок мыши по форме
тут рисование на форме этого смайлика,а как сделать чтобы он появлялся при каждом нажатии щелчком...

Вывод строки текста в одном и том же месте
народ, мне нужно что бы программа выводила слово "программа" 15 раз в одном и том же месте. как это...

Задаю координаты, но кликает не в том месте
Здарова! Ситуация- я задал координаты элемента на экране монитора, по которому нужно эмулировать...

2
Native x86
Эксперт Hardware
5514 / 3273 / 934
Регистрация: 13.02.2013
Сообщений: 10,423
14.10.2014, 17:11 2
kaz4640984, это потому что у курсора координаты отсчитываются от верхнего-левого угла экрана, а у канвы -- от верхнего-левого угла клиентской области компонента, чья канва используется для рисования. Для пересчета используйте метод ScreenToClient.
1
174 / 160 / 71
Регистрация: 22.02.2013
Сообщений: 1,769
Записей в блоге: 2
14.10.2014, 17:31 3
Delphi
1
2
3
4
5
6
7
8
9
procedure TForm1.Image1Click(Sender: TObject);
var
  t : TPoint;
begin
   t := Mouse.CursorPos;
   t := ScreenToClient(t);
   Form1.Caption := inttostr(t.x) + 'Õ ' +inttostr(t.y);
   image1.Canvas.TextOut(t.x,t.y,inttostr(t.x) + 'Õ ' +inttostr(t.y));
end;
1
14.10.2014, 17:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.10.2014, 17:31
Помогаю со студенческими работами здесь

Как нарисовать круг в месте, где произошел клик мышью
тоесть, задание такое: каждый раз, когда я кликаю по форме мышкой, в этом месте рисуется круг. и...

Показать картинку на том месте, где кликнули мышью
Вот заготовка программы (игры), но пока хочу лишь чтобы при клике картинка появлялась там, где...

Точка создается не в том месте, где надо на форме
сделал приложение которое по клику мышки на форме создает точку с координатами мышки ... только...

Поиск текста в скобках и замена на другой в том же месте
помогите пожалуйста :umbrage: str_line = str_line.Replace("1", line_b); // я понял это мне...

Почему метод DrawImage отрисовывает не в том месте, где надо?
Создал событие DragDrop при перетаскивании на picture box, внутри события нужно отрисовать в...

Вытаскивать строку, но только в том месте, где есть определенная надпись
Всем привет. Проблема такая, делаю не большой парсер все уже готово, осталась только составить...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru