Форум программистов, компьютерный форум, киберфорум
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 17.06.2019
Сообщений: 26

Колёсико мыши

11.10.2019, 18:21. Показов 2089. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Где и какой код вставить для прокрутки колёсиком, пытался разными способами но выдаёт "expected '=' but '('"
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
unit Unit2;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;
 
type
  TForm2 = class(TForm)
    scrlbx1: TScrollBox;
    lbl1: TLabel;
    rg1: TRadioGroup;
    rg2: TRadioGroup;
    rg3: TRadioGroup;
    rg4: TRadioGroup;
    rg5: TRadioGroup;
    rg6: TRadioGroup;
    rg7: TRadioGroup;
    rg8: TRadioGroup;
    rg9: TRadioGroup;
    rg10: TRadioGroup;
    rg11: TRadioGroup;
    rg12: TRadioGroup;
    rg13: TRadioGroup;
    rg14: TRadioGroup;
    rg15: TRadioGroup;
    rg16: TRadioGroup;
    rg17: TRadioGroup;
    rg18: TRadioGroup;
    rg19: TRadioGroup;
    rg20: TRadioGroup;
    lbl2: TLabel;
    btn1: TButton;
    lbl3: TLabel;
    lbl4: TLabel;
    btn2: TButton;
    procedure btn2Click(Sender: TObject);
    procedure btn1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form2: TForm2;
    ball:Integer;
 
  type answers=array[1..20,0..3] of byte;
  const otv:answers=((1,0,0,0),(0,0,1,0),(0,0,0,1),(0,1,0,0),(0,0,1,0),(1,0,0,0),(0,0,1,0),(1,0,0,0),(0,1,0,0),(0,0,0,1),(0,1,0,0),(0,1,0,0),(0,1,0,0),(0,0,0,1),(0,0,0,1),(1,0,0,0),(1,0,0,0),(0,0,0,1),(0,0,1,0),(0,0,1,0));
implementation
 
{$R *.dfm}
 
procedure TForm2.btn2Click(Sender: TObject);
begin
close;
end;
 
procedure TForm2.btn1Click(Sender: TObject);
begin
ball:=otv[1,rg2.itemIndex]+
otv[2,rg3.itemIndex]+
otv[3,rg4.itemIndex]+
otv[4,rg5.itemIndex]+
otv[5,rg7.itemIndex]+
otv[6,rg9.itemIndex]+
otv[7,rg6.itemIndex]+
otv[8,rg8.itemIndex]+
otv[9,rg10.itemIndex]+
otv[10,rg11.itemIndex]+
otv[11,rg12.itemIndex]+
otv[12,rg1.itemIndex]+
otv[13,rg13.itemIndex]+
otv[14,rg14.itemIndex]+
otv[15,rg15.itemIndex]+
otv[16,rg16.itemIndex]+
otv[17,rg17.itemIndex]+
otv[18,rg18.itemIndex]+
otv[19,rg19.itemIndex]+
otv[20,rg20.itemIndex];
 
if (ball >= 20) then lbl2.caption :='5'
else
 
if (ball >= 16) and (ball <= 19) then lbl2.caption :='4'
else
 
if (ball >= 11) and (ball <= 15) then lbl2.caption:='3'
else
 
if (ball >= 1) and (ball <= 10) then lbl2.caption :='2'
else
lbl2.caption := '1'
end;
 
end.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.10.2019, 18:21
Ответы с готовыми решениями:

Отключить колесико мыши на DBLookupComboboxEh
Вопрос такой: как отключить колесико мыши на DBLookupComboboxEh, оставив только выбор из выпадающего списка, чтобы случайно не изменить...

Перемещение камеры при нажатой левой клавише мыши; проблемы с обзором мыши и видимостью указателя
Добрый день! У меня есть проект с кубом, кольцом и двумя кнопками из прошлой темы...

Колёсико мыши
Пишу код: if (e.KeyCode == Keys./*Колёсико мыши вверх*/) Как называется колёсико мыши в классе Keys?

11
Модератор
4140 / 2353 / 810
Регистрация: 15.11.2015
Сообщений: 9,407
11.10.2019, 18:35
W0X, есть событие от колеса OnMouseWheel.
0
0 / 0 / 0
Регистрация: 17.06.2019
Сообщений: 26
11.10.2019, 18:43  [ТС]
AzAtom, Нашёл готовый вариант, но выводит ошибку " expected '=' but '(' "
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
unit Unit2;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;
 
type
  TForm2 = class(TForm)
    scrlbx1: TScrollBox;
    lbl1: TLabel;
    rg1: TRadioGroup;
    rg2: TRadioGroup;
    rg3: TRadioGroup;
    rg4: TRadioGroup;
    rg5: TRadioGroup;
    rg6: TRadioGroup;
    rg7: TRadioGroup;
    rg8: TRadioGroup;
    rg9: TRadioGroup;
    rg10: TRadioGroup;
    rg11: TRadioGroup;
    rg12: TRadioGroup;
    rg13: TRadioGroup;
    rg14: TRadioGroup;
    rg15: TRadioGroup;
    rg16: TRadioGroup;
    rg17: TRadioGroup;
    rg18: TRadioGroup;
    rg19: TRadioGroup;
    rg20: TRadioGroup;
    lbl2: TLabel;
    btn1: TButton;
    lbl3: TLabel;
    lbl4: TLabel;
    btn2: TButton;
    procedure btn2Click(Sender: TObject);
    procedure btn1Click(Sender: TObject);
    procedure TForm1.ScrollBox1MouseWheel(Sender: TObject; Shift: TShiftState;
  WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
 
  private
    { Private declarations }
  public
    { Public declarations }
 
 
var
  Form2: TForm2;
    ball:Integer;
 
  type answers=array[1..20,0..3] of byte;
  const otv:answers=((1,0,0,0),(0,0,1,0),(0,0,0,1),(0,1,0,0),(0,0,1,0),(1,0,0,0),(0,0,1,0),(1,0,0,0),(0,1,0,0),(0,0,0,1),(0,1,0,0),(0,1,0,0),(0,1,0,0),(0,0,0,1),(0,0,0,1),(1,0,0,0),(1,0,0,0),(0,0,0,1),(0,0,1,0),(0,0,1,0));
implementation
 
{$R *.dfm}
 
procedure TForm1.ScrollBox1MouseWheel(Sender: TObject; Shift: TShiftState;
  WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
  with ScrollBox1.VertScrollBar do
   Position := Position - WheelDelta div 4;
 Handled := True;
end;
 
procedure TForm2.btn2Click(Sender: TObject);
begin
Form2.ItemIndex:= -1;
close;
end;
 
procedure TForm2.btn1Click(Sender: TObject);
begin
ball:=otv[1,rg2.itemIndex]+
otv[2,rg3.itemIndex]+
otv[3,rg4.itemIndex]+
otv[4,rg5.itemIndex]+
otv[5,rg7.itemIndex]+
otv[6,rg9.itemIndex]+
otv[7,rg6.itemIndex]+
otv[8,rg8.itemIndex]+
otv[9,rg10.itemIndex]+
otv[10,rg11.itemIndex]+
otv[11,rg12.itemIndex]+
otv[12,rg1.itemIndex]+
otv[13,rg13.itemIndex]+
otv[14,rg14.itemIndex]+
otv[15,rg15.itemIndex]+
otv[16,rg16.itemIndex]+
otv[17,rg17.itemIndex]+
otv[18,rg18.itemIndex]+
otv[19,rg19.itemIndex]+
otv[20,rg20.itemIndex];
 
if (ball >= 20) then lbl2.caption :='5'
else
 
if (ball >= 16) and (ball <= 19) then lbl2.caption :='4'
else
 
if (ball >= 11) and (ball <= 15) then lbl2.caption:='3'
else
 
if (ball >= 1) and (ball <= 10) then lbl2.caption :='2'
else
lbl2.caption := '1'
end;
 
end.
0
Модератор
4140 / 2353 / 810
Регистрация: 15.11.2015
Сообщений: 9,407
11.10.2019, 18:52
Цитата Сообщение от W0X Посмотреть сообщение
но выводит ошибку " expected '=' but '(' "
В какой строке эта ошибка?
Часть с прокруткой компилируется и работает без ошибки.

Ищи ошибку в подсвеченной строке, обычно до курсора.
0
0 / 0 / 0
Регистрация: 17.06.2019
Сообщений: 26
11.10.2019, 18:56  [ТС]
AzAtom,
Миниатюры
Колёсико мыши  
0
 Аватар для GoodWeather
886 / 588 / 179
Регистрация: 28.02.2017
Сообщений: 2,359
Записей в блоге: 1
11.10.2019, 19:01
В описании класса (строка 40) без TForm1. И у вас вообще видимо TForm2 - так что в 59-й надо TForm2.
0
0 / 0 / 0
Регистрация: 17.06.2019
Сообщений: 26
11.10.2019, 19:05  [ТС]
GoodWeather, Нет уже менял имя Формы всё равно эта же ошибка. Забыл переименовать просто. И ScrollBox1-сы на scrlbx1 тоже изменял, не понимаю в чём проблема.
0
Модератор
4140 / 2353 / 810
Регистрация: 15.11.2015
Сообщений: 9,407
11.10.2019, 19:38
Блин, зачем там самому вписывать? Эти объявления (строка 40) и заготовки обработчиков дельфя сама генерирует как нужно!
А если уж копировать, то надо понимать, как оно работает. Надо или автоматически сгенерировать и тело обработчика вписать, или скопировать всё как положено, добавив и в объявление класса формы, и потом уже щёлкать по нужному событию в инспекторе объектов. Тогда обработчик подхватится автоматически.

Добавлено через 1 минуту
W0X, наверное, проще будет проект сюда скинуть и поправят (желательно с комментами).
0
 Аватар для GoodWeather
886 / 588 / 179
Регистрация: 28.02.2017
Сообщений: 2,359
Записей в блоге: 1
11.10.2019, 20:07
У вас TForm2 = class(TForm), а вы написали procedure TForm1.ScrollBox1MouseWheel, понимаете?
В первом вхождении вообще имя класса не пишется, а во втором TForm2 надо. И в инспекторе объектов данный обработчик надо установить.
1
561 / 230 / 88
Регистрация: 11.07.2015
Сообщений: 817
11.10.2019, 20:09
Error - declaration expected but end of file found. Не хватает "закрывающего" модуль энда с точкой (end.).
0
Модератор
4140 / 2353 / 810
Регистрация: 15.11.2015
Сообщений: 9,407
11.10.2019, 21:08
Лучший ответ Сообщение было отмечено W0X как решение

Решение

Вот поэтому и не надо прямо копировать весь обработчик вместе с объявлением. Делается двойной щелчок в инспекторе объектов, дельфи открывает заготовку для обработчика и туда нужно скопировать код, не стирая строки со словами "procedure TForm.......", и будет всё нормально.

Добавлено через 1 минуту
UR1004SWL, там скорее наоборот, ожидается объявление, а найден конец файла.
0
11.10.2019, 22:44

Не по теме:

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

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.10.2019, 22:44
Помогаю со студенческими работами здесь

Колёсико мыши
Скажите пожалуйста возможно ли взаимодействие явы скрипта и вертикального колёсика мыши , а также как его осуществить.

Колёсико мыши C++
Доброго времени суток! Как из консоли узнать что мы крутим колёсико мыши вверх или вниз? В MOUSE_EVENT можно отследить лишь факт...

SB_THUMBTRACK и колесико мыши
В листинге 2.2 обработать сообщение о перемещении движка полосы скроллин- га SB_THUMBTRACK и колесика мыши. //листинг 2.2 #include...

Не работает колесико мыши
Доброго всем времени суток! Не работает колесико мыши при прокрутке документа Excel... На всем остальном работает (Ворд, Опера и т.п) :( ...

Не работает колесико мыши
Установил Kali Linux - не работает колесико мыши. Пробовал по всякому, но никак не могу решить эту проблему


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru