小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

SCROLLBOX的MouseWheel

 aaie_ 2011-12-23
SCROLLBOX,在有些時候,你寫了MOUSEWHEEL事件的代碼,但缺看不到效果,關(guān)鍵在與在SCROLLBOX中都是IMAGE或LABEL控件。所以SCROLLBOX根本的不到焦點。
解決方案:
在SCROLLBOX中放入控件LISTBOX1,將LISTBOX1的長寬都設(shè)為0,
在SCROLLBOX的MOUSEMOVE事件中寫入代碼:
procedure TForm1.ScrollBox1MouseMove(Sender: TObject; Shift: TShiftState;
  X, Y: Integer);
begin
//listbox隨鼠標(biāo)移動,不移動的話在SCROLLBOX在次得到焦點的時候滾動到LISTBOX位置
listbox1.Top:=y;
listbox1.Left:=x;
//Listbox1 得到焦點,其實是SCROLLBOX得到焦點
listbox1.SetFocus;
end;
然后在寫控制鼠標(biāo)滾輪的事件。

procedure TForm1.ScrollBox1MouseWheelUp(Sender: TObject;
  Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
  var posi:integer;
  begin
   posi := ScrollBox1.vertScrollBar.Position - 25 ;
if ScrollBox1.vertScrollBar.Position < 0 then posi := 0;
ScrollBox1.vertScrollBar.Position := posi
end;

procedure TFrom1.ScrollBox1MouseWheelDown(Sender: TObject;
  Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
begin
   ScrollBox1.vertScrollBar.Position := ScrollBox1.vertScrollBar.Position + 25 ;
end;
這樣就可以了,網(wǎng)上的很多方案都是截取系統(tǒng)的Message VM_WHEEL,其實SCROLLBOX本身就有,不需要來修改他,因為修該Message會對其他控件有影響,關(guān)鍵是在于他本身是否可以接受焦點。
上面代碼D7沒有問題。LISTBOX空間可以換成其他能接受焦點的控件來代替,但不要用EDIT控件,因為EDIT控件在接受焦點后有光標(biāo)顯示。

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多