Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Tchar и колесико [D7, WinXP]


SHerloK ©   (2012-05-29 08:58:00) 

Проблема заключается в том что я не могу отключить прокрутку графика колесиком. Хочу повесить на MousewheelDown/mouse wheelup свой код но он не срабатывает а вместо этого происходит перемещение графика вверх вниз. Ткните носом где ошибся.


Кщд   (2012-05-30 17:38:00) [1]


> sniknik ©   (29.05.12 09:23) [1]
> где где, в 17й строке вестимо.
>
> SHerloK   (29.05.12 09:47) [2]
> Borderstyle?? а как это влияет на прокрутку?да и не помогает
> изменение
>
> DVM ©   (29.05.12 10:01) [3]
>
> ты где отсчитывал 17 строку? В инспекторе объектов что ли?
>  :)
> SHerloK   (29.05.12 12:52) [4]
> а где??


это орех))
почему копилка не пополняется?


Германн   (2012-05-30 01:00:00) [2]


> и кстати в mousewheeldown/up это почему то не работает.

Если бы "это" работало в mousewheeldown/up можно было бы сделать ужасного для пользователя монстра. Вверх крутишь - прокручивается, вниз крутишь - песенки поёт. :)


SHerloK   (2012-05-29 17:40:00) [3]


>   Handled := True;

Спасибище огромное, и кстати в mousewheeldown/up это почему то не работает. Но все равно огромное спасибо.


AV   (2012-05-29 16:04:00) [4]

аа.. понял
procedure TForm1.Chart1MouseWheel(Sender: TObject; Shift: TShiftState;
 WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
  Caption := 'Chart1MouseWheel ' + FormatDateTime('hh-mm-ss',now);
  Handled := True;
end;

procedure TForm1.btn1Click(Sender: TObject);
var
 i: Integer;
begin
  Chart1.SetFocus;
  for i := 0 to 100 do
  begin
    fstlnsrsSeries1.Add(Random(i));
  end;

end;


AV   (2012-05-29 15:50:00) [5]

блин, никак не пойму, как он прокручивается, куда?..
какие настройки Chart?

dfm, аля
 object Chart1: TChart
   Left = 80
   Top = 8
   Width = 473
   Height = 329
   BackWall.Brush.Color = clWhite
   BackWall.Brush.Style = bsClear
   Title.Text.Strings = (
     'TChart')
   View3D = False
   TabOrder = 0
   OnMouseWheel = Chart1MouseWheel
   object fstlnsrsSeries1: TFastLineSeries
     Marks.ArrowLength = 8
     Marks.Visible = False
     SeriesColor = clRed
     LinePen.Color = clRed
     XValues.DateTime = False
     XValues.Name = 'X'
     XValues.Multiplier = 1.000000000000000000
     XValues.Order = loAscending
     YValues.DateTime = False
     YValues.Name = 'Y'
     YValues.Multiplier = 1.000000000000000000
     YValues.Order = loNone
   end
 end


SHerloK   (2012-05-29 15:35:00) [6]

Вообще код выполняется в chart1.mousewheeldown/up но при этом еще и график двигается вверх вниз как будто его прокручивают. allowpanning=pmNone


SHerloK   (2012-05-29 15:29:00) [7]


> если так, работает?

работает , в заголовке появляется , но график так и двигается. И у меня в коде вообще нигде нет работы с колесиком могу вообще весь исходник скинуть если надо, скажите куда.


AV   (2012-05-29 15:22:00) [8]

http://www.podgoretsky.com/ddp/idioms.aspx

если так, работает?

procedure TForm1.btn2Click(Sender: TObject);
begin
   Chart1.SetFocus;
   Exit;

procedure TForm1.Chart1MouseWheel(Sender: TObject; Shift: TShiftState;
begin
   Caption := Caption + 'ChartMouseWheel';


SHerloK   (2012-05-29 15:16:00) [9]

да у меня код на chart1.mousewheeldown/up нет срабатывается просто, вместо этого график двигается вверх вниз. Я не знаю какое свойсвто за это отвечает в гугле тоже вродже никто не сталкивался с этим.


SHerloK   (2012-05-29 15:04:00) [10]


> Dimka Maslov ©   (29.05.12 13:20) [5]
> Сообщения от колёсика мыши получает только объект, имеющий
> фокус ввода (тот, который получает ввод от клавиатуры).
> Чтобы сообщения от колеса передавать в несфокусированный
> объект, надо перехватывать их на уровне формы, прекращать
> их обработку, а затем посылать в нужный объект.

фокус принудительно передается chart'у


Dimka Maslov   (2012-05-29 13:20:00) [11]

Сообщения от колёсика мыши получает только объект, имеющий фокус ввода (тот, который получает ввод от клавиатуры). Чтобы сообщения от колеса передавать в несфокусированный объект, надо перехватывать их на уровне формы, прекращать их обработку, а затем посылать в нужный объект.


SHerloK   (2012-05-29 12:52:00) [12]

а где??


DVM   (2012-05-29 10:01:00) [13]


> Borderstyle?? а как это влияет на прокрутку?

ты где отсчитывал 17 строку? В инспекторе объектов что ли? :)


SHerloK   (2012-05-29 09:47:00) [14]

Borderstyle?? а как это влияет на прокрутку?да и не помогает изменение


sniknik   (2012-05-29 09:23:00) [15]

где где, в 17й строке вестимо.


Наверх

Титульная страница Поиск, карта сайта Написать письмо