線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1818
推到 Plurk!
推到 Facebook!

請問怎樣判斷兩個按鈕同時被按下?

尚未結案
zxy666666
中階會員


發表:108
回覆:150
積分:86
註冊:2005-01-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-07-07 20:13:54 IP:59.36.xxx.xxx 未訂閱
大家好! 我有一段代碼需判斷兩個按鈕(Button1,Button2)同時被按下才可以去執行這段代碼(比如:showmessage('test')) 請問怎麼樣判斷以及這段代碼需放在哪裡? 謝謝!
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-07-07 20:39:06 IP:211.22.xxx.xxx 未訂閱
同時被按下< >可能嗎< >Windows上的物件同時只能有一個能得到焦點(Focus)被按下,如何同時呢< >你不會說是 >可不可以把你的需求說的更清楚!< > ------------------- 學,然後知不足。
zxy666666
中階會員


發表:108
回覆:150
積分:86
註冊:2005-01-14

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-07-07 21:02:02 IP:59.36.xxx.xxx 未訂閱
Stallion大大您好! 是這樣,因為是用觸摸屏去操作程式(用鼠標好像是不可能同時點擊兩個按鈕),而那個操作為了安全起見,必須同時按兩個按鈕才可以操作(左手按一個,右手按一個按鈕).
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-07-07 21:06:51 IP:211.22.xxx.xxx 未訂閱
引言: 是這樣,因為是用觸摸屏去操作程式(用鼠標好像是不可能同時點擊兩個按鈕),而那個操作為了安全起見,必須同時按兩個按鈕才可以操作(左手按一個,右手按一個按鈕).
我認為就算是觸摸式螢幕,但只是作業系統的另一種輸入設備,骨子裡還是Windows在運作,所以個人認為你再怎麼偵測只能得到一個按鍵被按下,除非使用TSpeedButton。請參考! ------------------- 學,然後知不足。
zxy666666
中階會員


發表:108
回覆:150
積分:86
註冊:2005-01-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-07-07 21:25:47 IP:59.36.xxx.xxx 未訂閱
Stallion大大您好! 我是因為新手啦,所以才比如說Button, 請問如果我改用TSpeedButton,又該如何判斷呢?謝謝!
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#6 引用回覆 回覆 發表時間:2005-07-07 21:55:00 IP:219.86.xxx.xxx 未訂閱
必須同時按兩個按鈕才可以操作? 物件焦點是不可能同時存在在兩個物件上。 必然會有先後順序,既使同時按。 然而 觸摸式螢幕 似乎是模擬滑鼠輸入(訊息)。 因此不可能會有 (Button1)MouseDown ->(Button2)MouseDown ->(Button1)MouseUp-> (Button2)MouseUp 既使是使用SpeedButton。 只能大約用模擬當button1 按下後,在2 秒內必須按下 Button2 。 則事件成立。在畫面上去模擬看起來像是同時按下(可用SpeedButton.Down)。 或者 查閱 觸摸式螢幕 是否有提供相關進階指令,可以檢視被按下的狀態。 (沒弄過!不清楚) 然而這樣做的用意,看起來是毫無意義。 以上若有錯誤,歡迎指正。謝謝! ~~~~~~~~~~~ 難得聰明,常常糊塗。 ~~~~~~~~~~~
Stallion
版主


發表:52
回覆:1600
積分:1995
註冊:2004-09-15

發送簡訊給我
#7 引用回覆 回覆 發表時間:2005-07-07 22:06:06 IP:211.22.xxx.xxx 未訂閱
放兩個SpeedButton在FORM上,之後記得將個別的GroupIndex指定一個大於0的數值(兩個BUTTON的GroupIndex不能一樣,否則會互斥),如此按下兩個按鈕才能保持同時被按下的狀態,再來就是在程式裡面判斷個別DOWN的屬性值,是不是兩個BUTTON都已被按下。 ------------------- 學,然後知不足。
暗黑破壞神
版主


發表:9
回覆:2301
積分:1627
註冊:2004-10-04

發送簡訊給我
#8 引用回覆 回覆 發表時間:2005-07-07 22:39:22 IP:210.64.xxx.xxx 未訂閱
我覺得你是沒搞清楚狀況。 你還想要同時按兩個地方。 你有沒有試著按按看? 因為 touch pannel 是電阻性的。 所以左右兩點同時按下去。 會在兩點之間出現。 真的去試過再來談程式要怎麼寫吧。
wameng
版主


發表:31
回覆:1336
積分:1188
註冊:2004-09-16

發送簡訊給我
#9 引用回覆 回覆 發表時間:2005-07-07 23:45:25 IP:219.86.xxx.xxx 未訂閱
我剛剛去超商買了杯飲料,試了一下 ATM提款機 的觸摸式螢幕。 發現 當同時二下兩個地方。 只有先按的會被接收到(有效),後按的會無效。 參考。 感覺 zxy666666 有點想太多了。... 畢竟 觸摸式介面,需要的是獨佔介面、單一流程。複雜化了... 若有使用者按錯的疑慮。 可切換確認畫面,使使用者再次確認剛剛的動作。 ~~~~~~~~~~~ 難得聰明,常常糊塗。 ~~~~~~~~~~~
zxy666666
中階會員


發表:108
回覆:150
積分:86
註冊:2005-01-14

發送簡訊給我
#10 引用回覆 回覆 發表時間:2005-07-08 08:56:34 IP:219.132.xxx.xxx 未訂閱
感謝Stallion大大及暗黑破壞神,wameng兩位版主大人的回答。    真的是我不懂的說,我以為觸控的可以兩只手在屏幕上按,就以為可以同時兩個 按鈕被按下.我今天又去特意試操作觸摸屏,正如各位大大所說不是可能。 >
系統時間:2024-05-20 5:04:04
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!