Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Портал .::2BakSa.WS::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Программирование > Delphi

Уважаемые пользователи nowa.cc и 2baksa.ws. У нас сложилось тяжёлое финансовое положение. Мы работаем для вас вот уже более 15 лет и сейчас вынуждены просить о помощи. Окажите посильную поддержку проектам. Мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: 826074280762 Webmoney WME: 804621616710
PayPal PayPal_Email E-mail для связи по вопросу помощи
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!
Ответ
 
Опции темы Опции просмотра Language
Старый 30.12.2008, 11:03   #1
Неактивный пользователь
 
Пол:Мужской
Регистрация: 19.06.2008
Сообщений: 95
Репутация: 1
По умолчанию события onMouseWheelUp в TForm

Здравствуйте! Подскажите кто знает. Есть форма Form1. Пишу обработчик события FormMouseWheelUp. В нем идет обновление данных в форме из ADO запроса. Т.е. по скролу переход на след запись и вывод результатов запроса в поля. Вот текст процедуры.

procedure TForm1.FormMouseWheelUp(Sender: TObject;
Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
var
Answer: integer;
begin
if Change then begin
Answer := MessageBox(0, 'Сохранить изменения?','Вопрос', MB_YESNOCANCEL or MB_ICONQUESTION);
if Answer = ID_YES then
ApplyChanges;//процедура обновления полей формы
if (Answer = ID_YES) or (Answer = ID_NO) then begin
Change :=false;
Ado.Prior;
end;
end
else
Ado.Prior;
end;

Все нормально, но при одном щелчке колесика, событие OnMouseWheelUp вызывается почему-то 4 раза, а значит переход идет не на одну позицию, а на 4.

Посоветуйте как лучше от этого избавиться. Можно вставить счетчик, но может можно как-то лучше сделать?

Последний раз редактировалось Litvinenko_A; 30.12.2008 в 11:07..
Litvinenko_A вне форума
 
Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама: Рекомендуем компьютерную фирму КНС SFP-S1LC12-G-1550-1310 - Подарок каждому покупателю!cubic zirconia ценаire 250 c1Рекомендуем - купить моноблоки Lenovo - билеты на футбол в подарок каждому покупателюбукеты мужские доставка краснодар


Старый 04.01.2009, 01:11   #2
plahmonah
Постоялец
 
Аватар для plahmonah
 
Пол:Мужской
Регистрация: 11.08.2005
Сообщений: 626
Репутация: 266
По умолчанию Re: события onMouseWheelUp в TForm

Litvinenko_A
Крутил твою тему получилсь, кое что:
Вывод данных из 3-х полей таблицы бд в Edit.
Получается крутишь колес у мыша, а даттые у тебя в этиде меняются.
qTest - есть ADOQuerty
Код здесь

Последний раз редактировалось plahmonah; 04.01.2009 в 10:42..
plahmonah вне форума
 
Ответить с цитированием Вверх
Старый 04.01.2009, 09:55   #3
plahmonah
Постоялец
 
Аватар для plahmonah
 
Пол:Мужской
Регистрация: 11.08.2005
Сообщений: 626
Репутация: 266
По умолчанию Re: события onMouseWheelUp в TForm

Litvinenko_A
Ты еще рассказал бы как у тебя обновление в процедуре - ApplyChanges;, происходит?
И что такое Change?
plahmonah вне форума
 
Ответить с цитированием Вверх
Старый 05.01.2009, 16:09   #4
Litvinenko_A
Неактивный пользователь
 
Пол:Мужской
Регистрация: 19.06.2008
Сообщений: 95
Репутация: 1
По умолчанию Re: события onMouseWheelUp в TForm

Цитата:
Сообщение от bjjzp Посмотреть сообщение
Litvinenko_A
Ты еще рассказал бы как у тебя обновление в процедуре - ApplyChanges;, происходит?
И что такое Change?

Changes это булевая переменная определяющая изменились ли данные на форме. Если да, то в ApplyChanges вызывается скрипт с updat'ом измененных данных. Короче идея как в любом редакторе.

Добавлено через 31 минуту
Цитата:
Сообщение от bjjzp Посмотреть сообщение
Handled:=true;

Спасибо. Вот как раз про этот параметр я и не знал.

Последний раз редактировалось Litvinenko_A; 05.01.2009 в 16:41.. Причина: Добавлено сообщение
Litvinenko_A вне форума
 
Ответить с цитированием Вверх
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Культурные события SmirnovD Искусство 21 04.07.2012 15:36
Время. События. Люди. Секреты III Рейха BALISTA2 Документальная и популярная литература 0 05.10.2009 14:44
События с Медведом Elliot Правовые вопросы 63 27.10.2007 15:11

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 14:41. Часовой пояс GMT +3.


Copyright ©2004 - 2024 2BakSa.WS

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2024, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.14289 секунды с 13 запросами