21 / 22 / 2
Регистрация: 20.09.2011
Сообщений: 196
Записей в блоге: 1
1

Есть код рисования мышкой, как сделать, чтобы он работал только при активации/деактивации

24.02.2012, 05:36. Показов 1536. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Погуглил, получил код:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 with Canvas do begin
   Pen.Color:= clNavy;
   Pen.Width:= 2;
   MoveTo(X, Y);
 end;  
end;
 
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
 Y: Integer);
begin
 if ssLeft in Shift then Canvas.LineTo(X, Y);
end;
Как сделать чтобы он работал только при активации и деактивации на button1?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2012, 05:36
Ответы с готовыми решениями:

Как сделать, чтобы мой поисковик работал с поиском только символов и выдавал при этом результат?
Прошу помогите! Хочу чтобы значении в переменной дали результат при поиске числа 27 и '27'. >>>...

Событие, возникающее при активации/деактивации формы
Какое событие использовать, когда форма не активна, и активна?

Как сделать чтобы макрос работал только в диапазоне А1-А100?
Как сделать чтобы макрос работал только в диапазоне А1-А100??

Скрипт работает только в IE, как сделать чтобы работал на всех браузерах?
вот собственно говоря сам скрипт это наброски для меня:) <html> <head> <script...

6
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
24.02.2012, 08:57 2
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
var
  Form1: TForm1;
  f:boolean=false;
implementation
 
{$R *.dfm}
 
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  if f then
  with Canvas do begin
   Pen.Color:= clNavy;
   Pen.Width:= 2;
   MoveTo(X, Y);
 end;
end;
 
procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
 if f and(ssLeft in Shift) then Canvas.LineTo(X, Y);
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
f:=not f;
end;
1
21 / 22 / 2
Регистрация: 20.09.2011
Сообщений: 196
Записей в блоге: 1
25.02.2012, 15:34  [ТС] 3
Подредактировал под свою программу(гуглил код, если что).
Только немного странно работает, если я включу и с момента, где image1.canvas нету.Тоесть я включаю, зажимаю мышку в программе, но за пределами картинки и от самого бока могу рисовать только, а просто елозя по картинке не могу(
0
21 / 22 / 2
Регистрация: 20.09.2011
Сообщений: 196
Записей в блоге: 1
27.02.2012, 10:28  [ТС] 4
Ап.помогите реализовать то, что находится выше.
0
Почетный модератор
64299 / 47594 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
27.02.2012, 10:33 5
Так наверное вместо
procedure TForm1.FormMouseDown
и
procedure TForm1.FormMouseMove
Вам нужно
procedure Image1.FormMouseDown
и
procedure Imsage1.FormMouseMove
раз рисуете на канве Имадже, а не на канве формы.
1
21 / 22 / 2
Регистрация: 20.09.2011
Сообщений: 196
Записей в блоге: 1
28.02.2012, 16:09  [ТС] 6
О, спасибо большое. Работает)

Добавлено через 32 секунды
Только form1.imagemousemove и form1.imagemousedown

Добавлено через 30 минут
А как к такой рисовалке сделать ластик(не трогая фон, там картинка)

Добавлено через 30 минут
Чтобы он удалял без потери картинки текст, нанесённый texout.
+ как сделать, чтобы текст в канве мог быть с обводкой?
0
Puporev
28.02.2012, 16:11     Есть код рисования мышкой, как сделать, чтобы он работал только при активации/деактивации
  #7

Не по теме:

Дайте воды попить, а то так есть хочется, что переночевать негде...

1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.02.2012, 16:11

Как сделать, чтобы код работал после условия if?
Всем привет! Есть простое условие. Когда срабатывает это условие, то код под этим условием не...

Как сделать правильно массив чтобы код работал?
Мне нужно сделать чтобы метод UpdateSun работал если x = 3,6,9,12. void Update() {...

Есть е1 канал и asterisk передается по внешнему каналу. как можно сделать так чтобы по локалке работал
есть е1 канал и asterisk передается по внешнему каналу. как можно сделать так чтобы по локалке...

Как при активации чекбокса сделать так, чтобы текстареа удалялась?
Нужен простой пример с функцией яваскрипт. Существует текстареа и чекбокс Как при активации...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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