- UID
- 84679
- 帖子
- 98
- 主題
- 9
- 精華
- 0
- 積分
- 252
- 楓幣
- 441
- 威望
- 250
- 存款
- 0
- 贊助金額
- 0
- 推廣
- 0
- GP
- 8
- 閱讀權限
- 0
- 性別
- 保密
- 在線時間
- 32 小時
- 註冊時間
- 2014-11-24
- 最後登入
- 2014-12-21
|
提示: 作者被禁止或刪除 內容自動屏蔽,只有管理員或有管理權限的成員可見
本帖最後由 hell520 於 2014-12-19 20:37 編輯
jjj80603 發表於 2014-12-18 10:53 [url=forum.php?mod=redirect&goto=findpost&pid=704433&ptid=45555][/url]
請問如何改變 城市黨 的小圖示 比如說 龍欸的圖示是一個骷顱頭 請問如何更改? ...
所有的 Visual Basic 應用程式的處理事件和訊息隱藏最上層的視窗。在設計模式中,視窗是 ThunderMain,在執行模式下,視窗是 ThunderRT6Main。RT6 會反映正在使用的 Visual Basic 的版本。這兩個視窗具有視窗標題的專案名稱或可執行檔的名稱。這是設定應用程式圖示的位置。
您需要使用GetWindowLong函式] 視窗鏈結查核行程,直到函式會傳回 0,表示其中有沒有更多的父視窗。或者,您可以使用FindWindow API 函式,搜尋 ThunderRT6Main,但可能有多個應用程式的執行個體。(FindWindow視窗,根據它的視窗類別名稱和 (或) 的視窗文字搜尋。如果有兩個應用程式執行個體,這兩個視窗都完全相同。因此,它不特定您永遠找出您實際上使用)。
下列 Visual Basic 範例示範這項。
當您設定圖示屬性時,您可以取得來源圖示在幾個方面:
藉由PictureBox控制項的Picture屬性 (如稍後所示範)。
使用LoadPicture函式以載入圖示的.ico 檔案。例如:- Set Me.Icon = LoadPicture("C:\Program Files\Microsoft Visual " _
- & "Studio\Common\Graphics\Icons\Misc\BULLSEYE.ICO")
複製代碼 使用LoadResPicture函式,從資源檔 (.res) 載入圖示。例如:
Set Me.Icon = LoadResPicture(101, vbResIcon)
逐步說明範例
在 Visual Basic 中開始新的標準 EXE專案。預設會建立 Form1。
從 [專案] 功能表中,新增新的模組至專案。
新增下列 API 宣告加入 module1 中:- Option Explicit
- Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" _
- (ByVal hWnd As Long, ByVal nIndex As Long) As Long
- Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
- (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
- Public Declare Function LoadIcon Lib "user32" Alias "LoadIconA" _
- (ByVal hInstance As Long, lpIconName As Any) As Long
- Public Const GWL_HWNDPARENT = (-8)
- Public Const WM_GETICON = &H7F
- Public Const WM_SETICON = &H80
- Public Const ICON_SMALL = 0
- Public Const ICON_BIG = 1
複製代碼 按一下Form1 ,然後在 [屬性] 視窗中設定的圖示。這就成為預設的應用程式圖示。
將PictureBox控制項加入至 Form1。
按一下 [圖片] 屬性,並按一下省略符號 (...)] 按鈕。這可讓您選擇您想要放入PictureBox哪張的圖片。請選擇圖示 (.ico) 檔案副檔名。
將指令按鈕] 控制項加入至 Form1。
將下列程式碼加入至 Form1 的程式碼視窗:- Private nRet As Long
- Private nMainhWnd As Long
- Private Sub Form_Load()
- nRet = GetWindowLong(Me.hWnd, GWL_HWNDPARENT)
- Do While nRet
- nMainhWnd = nRet
- nRet = GetWindowLong(nMainhWnd, GWL_HWNDPARENT)
- Loop
- End Sub
- Private Sub Command1_Click()
- Dim hIcon As Long
-
- ' set the icon
- Set Me.Icon = Picture1.Picture
- ' get a handle to ICON_BIG
- hIcon = SendMessage(Me.hWnd, WM_GETICON, ICON_BIG, ByVal 0)
- ' send ICON_BIG to the main window
- SendMessage nMainhWnd, WM_SETICON, ICON_BIG, ByVal hIcon
- End Sub
複製代碼 編譯專案並執行新的可執行檔。請按 ALT + TAB 組合鍵來查看您的應用程式圖示是什麼。如果您正在測試這 Visual Basic 在 IDE 中,請注意預設的 Microsoft Windows 圖示會出現。
按一下 [指令按鈕,再次按下 ALT + tab 鍵。請注意,應用程式圖示已變更。
來自:microsoft.com |
|