BCB5:TrayIcon控制元件的使用、問題及對策 (轉)

worldblog發表於2007-12-09
BCB5:TrayIcon控制元件的使用、問題及對策 (轉)[@more@]

 BCB5:TrayIcon的使用、問題及對策

我個人認為BCB5這個控制元件的功能還不錯,支援多幅自選圖示動畫、動畫速度可調,使用也很簡便。但今天聽朋友談起,才發現它有個小問題!

【通常使用】:通常將它與一個彈出式選單關聯,用它控制選單的彈出,這也是它的主要功能,用一個ImageList控制元件來存放它所使用的圖片。如你把編好的在下執行,便有可能遇到下面這個問題。

【問題】:在WIN98下(WIN ME 沒實驗)執行時,出現所謂”點2次“現象,即第一次點它(通常設為右鍵),選單正常彈出,此時,你不點選選單上的選項,將滑鼠點其他地方(比如桌面),彈出選單則隱藏。現在,你再次右擊托盤圖示TrayIcon,選單本該再次彈出!呵呵,它卻沒有。等你再點它一次,這次選單才彈出!很顯然,這是不正常的,也是不應該的,儘管是個小問題。

【對策】:設定TrayIcon控制元件的Animate屬性為true,一切OK!如想要靜止圖示,不要動畫的,這個Animate屬性仍要設為true,只是把ImageList控制元件中存放的其他圖片刪除掉,就留要的那個。否則,它們會自動迴圈動畫。

【其他】:

  [1] —— 如果ImageList中有2 幅以上圖片,Animate設為true時,觀察IconIndex屬性,每次點選這個屬性時,其數值不斷變化,表明當前圖片,間隔時間由AnimateInterval值確定。注意,修改的Animate屬性不會馬上生效,它在下一次開啟該專案時生效。

 [2] —— 一旦Animate為true且已生效後,不能再把icon屬性設為空,也不能再刪除ImageList控制元件,否則立即出現一連串AV(訪問衝突),此時只有用工作管理員強行關閉BCB了,呵呵。即使把Animate 改為false也不能馬上這麼做,別忘了修改Animate值要下次才生效!所以關閉該專案再開啟後就可以這麼做了。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-990309/,如需轉載,請註明出處,否則將追究法律責任。

相關文章