Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2005.12.11;
Скачать: [xml.tar.bz2];

Вниз

Убрать фокус   Найти похожие ветки 

 
Piero   (2005-11-26 11:11) [0]

У меня на форме есть только 1 компанент, который может получить фокус - comboBox, и при движении колеса мыши, значения его меняются, как убрать с него фокус, и как сделатьЖ если есть фокус, что бы не было реакции на вращение колеса мышки

Если ставить обработчик в форме:

procedure TMainForm.FormMouseWheel(Sender: TObject; Shift: TShiftState;
 WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
 WheelDelta:=0
end;
не помагает


 
ss2   (2005-11-26 12:03) [1]

ActiveControl:=nil;


 
Piero   (2005-11-26 12:13) [2]

все, равно не убирается фокус
ActiveControl:=nil
MainForm.activecontrol:=nil;


 
Anatoly Podgoretsky ©   (2005-11-26 12:49) [3]

А куда его убрать, раз у тебя только один компонент?


 
Piero   (2005-11-26 13:02) [4]

Не знаю
а по второму вопросу, как отключить, обработку вращения колеса мышки?


 
Zeqfreed ©   (2005-11-26 13:56) [5]

Piero   (26.11.05 11:11)

> procedure TMainForm.FormMouseWheel(Sender: TObject;
>Shift: TShiftState;
>  WheelDelta: Integer; MousePos: TPoint; var Handled:
>Boolean);
>begin
> WheelDelta:=0
>end;
> не помагает

Разумеется, не помогает. Т.к. WheelDelta - не var-параметр, то его изменение (по сути изменение локальной копии) действительно лишь в пределах процедуры. Читаем справку по событию TMouseWheelEvent и думаем. После того как подумали, понимаем, что установка Handled := true; укажет, что событие больше не требует обработки и так как мы ничего больше не сделали ни к чему не приведет.


 
Piero   (2005-11-26 15:57) [6]

Спасибо, я не заметил, что WheelDelta - не var-параметр


 
sniknik ©   (2005-11-26 17:10) [7]

можно так
переписывае все описание класса tcomboBox к себе в модуль выше описания формы, и делаеш небольшое изменение
type
 TComboBox = class(TCustomComboBox)
 private
   procedure WMCommand(var Message: TWMCommand); message WM_COMMAND;

 published
   property AutoComplete default True;
   property AutoDropDown default False;
   property AutoCloseUp default False;
   property BevelEdges;
   property BevelInner;
   property BevelKind default bkNone;
   property BevelOuter;
   property Style; {Must be published before Items}
   property Anchors;
   property BiDiMode;
   property CharCase;
   property Color;
   property Constraints;
   property Ctl3D;
   property DragCursor;
   property DragKind;
   property DragMode;
   property DropDownCount;
   property Enabled;
   property Font;
   property ImeMode;
   property ImeName;
   property ItemHeight;
   property ItemIndex default -1;
   property MaxLength;
   property ParentBiDiMode;
   property ParentColor;
   property ParentCtl3D;
   property ParentFont;
   property ParentShowHint;
   property PopupMenu;
   property ShowHint;
   property Sorted;
   property TabOrder;
   property TabStop;
   property Text;
   property Visible;
   property OnChange;
   property OnClick;
   property OnCloseUp;
   property OnContextPopup;
   property OnDblClick;
   property OnDragDrop;
   property OnDragOver;
   property OnDrawItem;
   property OnDropDown;
   property OnEndDock;
   property OnEndDrag;
   property OnEnter;
   property OnExit;
   property OnKeyDown;
   property OnKeyPress;
   property OnKeyUp;
   property OnMeasureItem;
   property OnSelect;
   property OnStartDock;
   property OnStartDrag;
   property Items; { Must be published after OnMeasureItem }
 end;

 TForm1 = class(TForm)
 ....

procedure TComboBox.WMCommand(var Message: TWMCommand);
begin
 if Message.NotifyCode <> 1 then inherited;
end;

изменения выделенны.


 
0xBAD ©   (2005-11-27 02:44) [8]

а ComboBox1.TabStop:=false не помогает?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2005.12.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.047 c
14-1132150008
ISP
2005-11-16 17:06
2005.12.11
Интересно, что за штука такая...


14-1132355247
Eraser
2005-11-19 02:07
2005.12.11
Знатокам алгоритмов сжатия, в частности, ZLib


14-1132302421
_Vaitek
2005-11-18 11:27
2005.12.11
Сжатие данных "на лету"


14-1132286700
Учусь
2005-11-18 07:05
2005.12.11
Зачем нужны коллекции?


2-1132721989
KGC
2005-11-23 07:59
2005.12.11
В чём фишка ?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский