全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1047
推到 Plurk!
推到 Facebook!

請問如何在ComboBox設定一個Events取得MouseDown的動件..

尚未結案
laku0121
一般會員


發表:39
回覆:49
積分:17
註冊:2002-10-30

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-09-22 13:45:04 IP:211.76.xxx.xxx 未訂閱
因ComboBox沒有MouseDown的功能,請問要如何才能製作或者取得Mouse動件
sos_admin
版主


發表:121
回覆:697
積分:768
註冊:2003-07-23

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-09-22 16:49:36 IP:61.155.xxx.xxx 未訂閱
unit Unit1;    interface    uses   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,   Dialogs, StdCtrls, ExtCtrls;    type   TForm1 = class(TForm)     ComboBox1: TComboBox;     Button1: TButton;     Memo1: TMemo;     ComboBox2: TComboBox;     procedure FormCreate(Sender: TObject);   private     procedure  OnMessage(var Msg: Tmsg; var Handled: Boolean);     { Private declarations }   public     { Public declarations }   end;    var   Form1: TForm1;    implementation    {$R *.dfm}    procedure TForm1.OnMessage(var Msg: Tmsg; var Handled: Boolean); var   Pt : TPoint;   WinCon : TWinControl;   WND : HWND; begin //不能按下鼠标那个健,都触发;您可以根据需要选取[L、M、R] if NOT ((Msg.message=WM_LBUTTONDOWN) OR (Msg.message=WM_MBUTTONDOWN) OR (Msg.message=WM_RBUTTONDOWN))  then EXIT; GetCursorPos(Pt); WND :=Handle; repeat     WinCon := FindControl(WND);     WND := ChildWindowFromPoint(WinCon.Handle,WinCon.ScreenToClient(Pt));     if WND = 0 then exit; until (WND = WinCon.Handle) or (WinCon.ControlCount <= 0); IF wincon IS tCOMBOBOX THEN //加入判断,来决定那个COMBOBOX发生鼠标按键事件 IF WINCON.Name ='ComboBox1' THEN [RED]//需要执行的相关事件的CODE MEMO1.Lines.Add(WINCON.Name); inherited end; procedure TForm1.FormCreate(Sender: TObject); begin application.onMessage:=onMessage; end; end. 供参考~
系統時間:2024-05-18 14:35:11
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!