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

使用CheckListBox 時,如何以滑鼠右鍵做Item的Select

答題得分者是:twinstart
ahapro
一般會員


發表:4
回覆:2
積分:1
註冊:2007-12-27

發送簡訊給我
#1 引用回覆 回覆 發表時間:2007-12-27 11:41:51 IP:60.248.xxx.xxx 訂閱
小弟我的目的是"要像檔案總管一樣,按滑鼠右鍵除了PopupMenu之外,此Item也被選取"
按右鍵PopupMenu是沒問題,但是滑鼠指到的Item,沒辦法選取
目前CheckListBox 原件內定可以使用滑鼠左鍵去改變Select的Item
所以我在 CheckListBox 的Even中的OnContextPopup ,寫下以下程式


[code cpp]
void __fastcall TMainForm::CheckListBox1ContextPopup(TObject *Sender,TPoint &MousePos, bool &Handled)
{
BOOL bStatus;
int MousePosItemIndex;

//先取得滑鼠指到Item的Index
MousePosItemIndex= CheckListBox1->ItemAtPos(MousePos,true);
//判斷大於0,才動作
if ( MousePosItemIndex>=0 )
{
//Selected[index] 只能判斷此項 是否被選取
bStatus=CheckListBox1->Selected[MousePosItemIndex];

//To Do Change Select Item....
//接下來就不知該如何做了??
}
}
[/code]

請問有以寫程式的方法去改變選取的Item嗎???
twinstart
一般會員


發表:4
回覆:7
積分:17
註冊:2007-12-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2007-12-27 15:49:25 IP:60.250.xxx.xxx 未訂閱
如果是想用右鍵選取item的話,
這樣應該就可以了吧!

[code cpp]
void __fastcall TForm1::CheckListBox1ContextPopup(TObject *Sender,
TPoint &MousePos, bool &Handled)
{
CheckListBox1->ItemIndex = CheckListBox1->ItemAtPos(MousePos,true);
}
[/code]
參考文章:http://delphi.ktop.com.tw/board.php?cid=168&fid=913&tid=67962

-----------------------------------------------
我爬爬爬.......................
ahapro
一般會員


發表:4
回覆:2
積分:1
註冊:2007-12-27

發送簡訊給我
#3 引用回覆 回覆 發表時間:2007-12-27 18:51:44 IP:60.248.xxx.xxx 訂閱
感謝指導!!
我一直在Selected中打轉....
居然沒找到 ItemIndex....(阿勒~~)
之前有類似的,看來我搜尋文章的方式還要加強!!(一直搜尋"右鍵" "Select")
系統時間:2024-05-06 4:31:57
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!