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

Вывод слова по клику мышки

26.05.2015, 14:43. Показов 645. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Написать программу, которая при нажатии левой кнопки мыши на форме ставит в этом месте какой-либо символ. Вид символа может выбираться из заранее заданного списка компонента ComboBox.

Программа выводит не в том месте символ, что не так?
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;
 
type
  TForm1 = class(TForm)
    ComboBox1: TComboBox;
    procedure FormClick(Sender: TObject);
   
 
  private
 
    { Private declarations }
  public
         x1,y1:integer;
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
 procedure Tform1.FormClick(Sender: TObject);
  var a:string;
      x1,y1:integer;
  begin
  a:=combobox1.Text;
  x1:=mouse.CursorPos.x;
  y1:=mouse.CursorPos.y;
  form1.Canvas.TextOut(x1,y1,a);
   end;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.05.2015, 14:43
Ответы с готовыми решениями:

Создание объекта по клику мышки
И еще раз доброго времени! Есть скрипт, отвечающий за постройку башни на кубике (нажали на кубик -...

Движение персонажа по клику мышки
У меня есть персонаж кубик, я хочу чтоб он двигался Все пишу в слой AS Вот код: stop(); var...

Создание объекта по клику мышки
Доброго времени суток, уважаемые форумчане. Начал разбираться с юнити3д, такая задача стоит...

Переключение набора виджетов по клику мышки.
День добрый. Подскажите пожалуйста, что лучше использовать. Цель такова - есть форма, сбоку...

1
379 / 332 / 89
Регистрация: 26.05.2010
Сообщений: 750
26.05.2015, 15:34 2
Так у тебя экранные координаты курсора, вот как вариант:

Delphi
1
2
3
4
5
6
7
8
9
10
11
procedure TForm1.FormClick(Sender: TObject);
var
 a: string;
 P: TPoint;
begin
 getCursorPos(P);
   a:=combobox1.Text;
 P.X:=P.X-Left-getSystemMetrics(SM_CXBORDER)-getSystemMetrics(SM_CYEDGE);
 P.Y:=P.Y-Top-getSystemMetrics(SM_CYCAPTION)-getSystemMetrics(SM_CYMENU)-getSystemMetrics(SM_CYBORDER)-getSystemMetrics(SM_CYEDGE);
 form1.Canvas.TextOut(P.X , P.Y,a);
end;
Добавлено через 3 минуты
Вот этот вариант будет точнее и правильнее

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
procedure TForm1.FormClick(Sender: TObject);
var
P : TPoint;
a: string;
begin
a := combobox1.Text;
GetCursorPos(P); {получили экранные координаты}
P := Form1.ScreenToClient(P); {преобразовали в координаты клиента}
 
Form1.Caption := IntToStr(P.X) + ' : ' + IntToStr(P.Y);
form1.Canvas.TextOut(P.X, P.Y, a);
end;
1
26.05.2015, 15:34
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.05.2015, 15:34
Помогаю со студенческими работами здесь

Выделение строки dataGrid по клику мышки
Надо сделать выделение строки грида по клику мышки. Получаю индекс сроки: DataGrid.HitTestInfo...

Получение цвета пикселя по клику мышки
Дали курсовую нахождение красных объектов на картинке красный цвет я нашел и объекты с ними, но...

Передвижение изображения по клику мышки, MFC
Здравствуйте. Задача такова, нужно по команде меню вывести шахматную доску, по другой вывести на...

Сделать что бы picturebox перемещался по клику мышки
Всем привет нужно сделать чтоб picturebox1 передвигался через mouse click в windowsforms C# у...


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

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