Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.62/21: Рейтинг темы: голосов - 21, средняя оценка - 4.62
0 / 0 / 0
Регистрация: 28.06.2018
Сообщений: 2
1

Как сделать так что бы по нажатию одной кнопки нажимались по очереди две?

28.06.2018, 08:06. Показов 3944. Ответов 5
Метки нет (Все метки)

Поясню на примере. Допустим нажимаю я кнопку K и в первый раз вместо K реализуется 1, а во второй раз нажатия клавиши K реализовалась бы клавиша 2 к примеру, и так по кругу. И в какой среде такое можно сделать? Товарищи помогите, буду признателен!
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.06.2018, 08:06
Ответы с готовыми решениями:

Как сделать так что бы при нажатии одной кнопки сделать разные вещи несколько раз ?
можно взять интегер i, и если оно ровно 1 то делай это а если нет то нет и если кликнуть на кнопку...

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

Как сделать, чтобы кнопки сами нажимались?
Помогите пожалуйста. Я не знаю как сделать чтобы кнопки сами нажимались. Мне надо чтобы нажималась...

Как сделать, чтобы кнопки сами нажимались
Допустим, есть 11 кнопок типа CommandButton. Как сделать так, чтобы эти кнопки сами по очереди...

__________________
5
218 / 62 / 32
Регистрация: 23.05.2014
Сообщений: 612
28.06.2018, 08:27 2
Цитата Сообщение от PGemoTiRan Посмотреть сообщение
И в какой среде такое можно сделать?
В любой.
у кнопок есть событие OnClick. Объяви переменную и, в зависимости от ее значения отправляй в нужную процедуру.
Delphi
1
2
3
4
case i of
1:Button1Click(Sender);
2:Button2Click(Sender);
end;
типа того...
0
Модератор
6792 / 4381 / 1874
Регистрация: 21.01.2014
Сообщений: 18,554
Записей в блоге: 3
28.06.2018, 08:59 3
drvolodko, Вы правильно сказали:
Цитата Сообщение от drvolodko Посмотреть сообщение
отправляй в нужную процедуру
а код дали неправильный:
Цитата Сообщение от drvolodko Посмотреть сообщение
case i of
1:Button1Click(Sender);
Не надо так делать, от слова совсем!
Сделайте процедуру, которую будете вызывать и из метода нажатия кнопки Button1 и оттуда, откуда требуется...
1
137 / 93 / 31
Регистрация: 27.06.2018
Сообщений: 226
28.06.2018, 10:11 4
нажимаю я кнопку K
Видимо, автор с клавиатурой хочет работать и заменять нажатие одной клавиши на другое (на 2 других).
Хук на WH_KEYBOARD_LL или на WH_KEYBOARD. В последнем случае с ограничениями
0
0 / 0 / 0
Регистрация: 28.06.2018
Сообщений: 2
28.06.2018, 11:13  [ТС] 5
Спасибо, а можно поподробнее расписать как код будет выглядеть в AutoHotkey
0
662 / 554 / 240
Регистрация: 26.11.2012
Сообщений: 2,182
28.06.2018, 11:46 6
Лучший ответ Сообщение было отмечено PGemoTiRan как решение

Решение

Цитата Сообщение от PGemoTiRan Посмотреть сообщение
Допустим нажимаю я кнопку K и в первый раз вместо K реализуется 1, а во второй раз нажатия клавиши K реализовалась бы клавиша 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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
unit Unit1;
 
interface
 
uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
 
type
  TForm1 = class(TForm)
    Button1: TButton;
    Label1: TLabel;
    Label2: TLabel;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private declarations }
    IntNum : Integer;
  public
    { Public declarations }
    procedure A1(var Values:Integer; Str:TLabel);
    procedure A2(var Values:Integer; Str:TLabel);
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
 
{ TForm1 }
 
procedure TForm1.A1(var Values: Integer; Str: TLabel);
begin
Values:=2;
Str.Caption:=Str.Caption+'1';
end;
 
procedure TForm1.A2(var Values: Integer; Str: TLabel);
begin
 Values:=1;
 Str.Caption:=Str.Caption+'2';
end;
 
procedure TForm1.Button1Click(Sender: TObject);
begin
 case IntNum of
 1: A1(IntNum, Label1);
 2: A2(IntNum, Label2);
 end;
end;
 
procedure TForm1.FormCreate(Sender: TObject);
begin
IntNum:=1;
end;
 
end.
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.06.2018, 11:46

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Как зделать так чтоб кнопки нажимались многоразово я нажал лишь один раз?
Я не знаю как зделать чтоб от одного нажатия кнопка нажималась многоразово. Меня это интересует из...

Как по нажатию одной кнопки сделать аплоад сразу трех файлов?
Есть три штуки <input type=file ...> Как по нажатию одной кнопки сделать аплоад сразу трех файлов

Как сделать так, чтобы по нажатию кнопки открывалось другое приложение?
Как сделать так, чтобы по нажатию кнопки открывалось другое приложение?

Как сделать так, чтобы по нажатию кнопки открывалась только одна форма?
Ситуация такова, что есть 20 различных элементов toolStripMenuItem, по нажатию каждого из которых...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.