[問題] 大量按鈕的配置

看板C_Sharp (C#)作者 (卡)時間11年前 (2013/12/31 11:21), 編輯推噓2(207)
留言9則, 3人參與, 最新討論串1/2 (看更多)
各位版友好,我在設計虛擬的觸碰鍵盤時遇到了疑問,故來求教版上的大家開解。 若今天已經有一個鍵盤的圖片,要實作出每一個對應的鍵, 大家會想用什麼樣的設計方法去實做呢。 1.以完整鍵盤圖當作底圖,在每一個鍵上個別拉一個panel或picturebox等元件蓋上, 設定元件為透明色,好處是可以直接產生滑鼠點擊屬性事件,大小位置也方便設定。 缺點是大量透明的元件會導致繪圖不順,容易發生鍵盤區塊閃爍的狀況。 2.將鍵盤圖乖乖拆開分割,每一個鍵都將圖片組合做好一個按鈕元件,個別設定事件。 好處是耦合低,繪圖效能可,隨時可自由編排鍵盤排列,缺點是前期費工。 3.直接放底圖,然後在監聽滑鼠事件中,重作每個鍵區域的碰撞偵測對應事件。 好處是繪圖效能最佳,缺點是要用程式碼來設定每一個區塊位置與大小,稍嫌繁瑣。 之前寫winform軟體很要求產出速度,所以常常用 1.的方法硬幹, 各種panel和picturebox用透明背景疊來疊去,當元件多的一個數量之後, 只要出現大量元件的切換出現,就會開始看到元件各種閃閃, 然後都跟客戶說這是一種科技特效,客戶心裡都讚好,做這麼快還加做特效。(...誤) 好不容易最近開始脫離大量產出,可以開發一些品質比較要求質感的產品, 正考慮是不是轉用WPF,自己查資料似乎比較適合做更精緻的互動效果。 以上疑問還懇請大家幫忙提供建議,感謝感謝。 m(_ _)m -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 210.244.92.91

12/31 22:15, , 1F
會閃的話應該看看Form.SuspendLayout()/ResumeLayout()
12/31 22:15, 1F

12/31 22:15, , 2F
的用途. :P
12/31 22:15, 2F

01/01 01:05, , 3F
感謝!
01/01 01:05, 3F

01/01 01:09, , 4F
鍵盤這種鍵歸鍵、盤歸盤的東西,每個鍵的功能又很像,很適
01/01 01:09, 4F

01/01 01:11, , 5F
合用2.做啊。位置倒不是大問題,大概就開始的切圖片是多的
01/01 01:11, 5F

01/01 01:12, , 6F
而且每個鍵長得又差不多,幾乎只要切一個就可以全部套用了
01/01 01:12, 6F

01/01 01:24, , 7F
甚至純GDI都可以畫出視覺效果還OK的鍵盤。
01/01 01:24, 7F

01/01 01:57, , 8F
哦哦。因為美術人員已經畫好圖的情況下,2會需要更多配合
01/01 01:57, 8F

01/01 01:58, , 9F
去掉鍵的鍵盤底圖,每個鍵的圖。但好處是鍵可以做切換動畫
01/01 01:58, 9F
文章代碼(AID): #1ImZWzJW (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #1ImZWzJW (C_Sharp)