DFXBB's 様の VB.NET - Vista Aero Glass Effect Window より、
Vistaと7では、IEや、エクスプローラのアドレスバーみたいなところの背景が、Aeroになっているんですよね。
それを、VB.NET(まあほかの.NETでも出来ると思います)でやる方法がわかりました!
まずコード貼っておくのでみてください!
-----
Imports System.Runtime.InteropServices
Public Class Form1
<StructLayout(LayoutKind.Sequential)> _
Public Structure MARGINS
Public cxLeftWidth As Integer
Public cxRightWidth As Integer
Public cyTopHeight As Integer
Public cyButtomheight As Integer
End Structure
<DllImport("dwmapi.dll")> _
Public Shared Function DwmExtendFrameIntoClientArea(ByVal hWnd As IntPtr, ByRef pMarinset As MARGINS) As Integer
End Function
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
On Error Resume Next
Dim margins As MARGINS = New MARGINS
margins.cxLeftWidth = -1
margins.cxRightWidth = -1
margins.cyTopHeight = -1
margins.cyButtomheight = -1
Dim hwnd As IntPtr = Me.Handle
Dim result As Integer = DwmExtendFrameIntoClientArea(hwnd, margins)
End Sub
End Class
-----
このコードをForm1のコード貼り付けて、Form1のBackColorをBlackに設定すると・・・
全部Aeroになります!
後は、適当にPanelなどのコントロールを配置すれば、ほかとは一味違うインターフェイスの出来上がり!
プログラマーの皆さん、やってみてください!
P.S.なぜかコントロールに配置したテキストが透過されてしまう事がわかりました。いろいろ研究してみます。
0 件のコメント:
コメントを投稿