VB編程實現Windows XP風格的介面

來源:互聯網
上載者:User

雖然WindowsXP的介面非常華麗。但是令人遺憾的是,我們用VB寫的程式除了菜單和視窗的外觀是XP風格外,其他控制項還是一如既往的是普通風格。我想,有的程式在XP下有XP的風格,VB也一定有辦法實現XP的風格。後來筆者在網上看到一篇介紹XML的文章,又在網上找到了一篇實現XP風格的文章,經過自己的實踐,終於找到了VB程式實現XP風格的辦法。為了使其他的網友不至於走像我這樣的多的彎路,將此辦法寫出來,與大家共同提高!!

具體的實現方法如下:

①:在你的表單加入代碼。如果是多個視窗,可以將此代碼放到模組中。

代碼如下:

'聲明API函數
Private Declare Sub InitCommonControls Lib "comctl32.dll" ()
  Private Sub Form_Initialize()
  InitCommonControls
End Sub

注意:千萬不要在Form_load()事件下寫InitCommonControls這句話,否則你的表單會啟動不了。(不要怪我沒告訴你啊~~~~)

②:建立一個和你的.exe同名的.exe.manifest檔案(假如:如果你最後編譯好的檔案名稱為WindowXPStyle.exe,則建立一個檔案名稱為WindowXPStyle.exe.manifest的檔案),並且此檔案必須存在於和你Exe檔案的同一目錄下。

以WindowXPStyle.exe為例,則這個WindowXPStyle.exe.manifest的檔案的內容如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="X86"
name="CompanyName.ProductName.YourApp"
type="win32"
/>
<description>Your application description here.</description>
<dependency>
<dependentAssembly>
<assemblyIdentity
  type="win32"
  name="Microsoft.Windows.Common-Controls"
  version="6.0.0.0"
  processorArchitecture="X86"
  publicKeyToken="6595b64144ccf1df"
  language="*"
/>
</dependentAssembly>
</dependency>
</assembly>

將以上內容儲存為WindowXPStyle.exe.manifest。並且和執行檔案放在一個目錄下(一定要記住)。

到此為止,我們的程式已經完成,不過在VB的設計環境下運行是看不到XP效果的。必須編譯成可執行檔運行才可以。(因為這個我試了不知多少遍,以為VB程式就是實現不了XP效果呢~~,沒想到必須編譯成執行檔案才可以)。

運行效果如下圖所示:

相信大家也看到了不足之處,就是放在FRAME控制項中的單遠按鈕有些“麻煩”!為瞭解決此問題,可以將選項按鈕放在PICTURE控制項中(以PICTURE控制項作為容器),再將PICTURE控制項放在FRAME控制項中,就可以了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.