모든 양식의 시스템 메뉴에 '정보 ...'단추를 추가 할 수있는 클래스를 만들었습니다. 양식의 load
이벤트에 의해 버튼이 추가되었지만이 버튼의 클릭을 처리하려면 어떻게해야합니까? 감사. 여기에 SystemMenu
클래스입니다시스템 메뉴의 사용자 지정 단추 클릭 처리
Private Sub mainForm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
{More code....}
Dim SysMenu = New SystemMenu(Me)
{More code....}
End Sub
그리고 - - 여기
내가 버튼을 추가 해요 어떻게
Imports System.Windows.Forms
Public Class SystemMenu
Private Declare Function GetSystemMenu Lib "user32" (ByVal hWnd As IntPtr, ByVal bRevert As Boolean) As IntPtr
Private Declare Function AppendMenu Lib "user32" Alias "AppendMenuA" (ByVal hMenu As IntPtr, ByVal uFlags As Int32, ByVal uIDNewItem As IntPtr, ByVal lpNewItem As String) As Boolean
Private Const MF_STRING As Integer = &H0
Private Const MF_SEPARATOR As Integer = &H800
Private m_hSysMenu As IntPtr
Private Property hSysMenu() As IntPtr
Get
Return Me.m_hSysMenu
End Get
Set(ByVal Value As IntPtr)
Me.m_hSysMenu = Value
End Set
End Property
'**
' Constructor
'*
Protected Friend Sub New(ByRef Form As Form)
Me.hSysMenu = GetSystemMenu(Form.Handle, False)
AddAbout(Form)
End Sub
'**
' Add an 'About' button to the system menu of the given form
'*
Private Sub AddAbout(ByRef Form As Form)
AppendMenu(Me.hSysMenu, MF_SEPARATOR, 1000, Nothing)
AppendMenu(Me.hSysMenu, MF_STRING, 1001, "About...")
End Sub
End Class
http://www.codeproject.com/ 기사/6122/서브 클래 싱 시스템 - 시스템 메뉴 – Jeff
이전에 발견했습니다. 'Imports System.Windows.Forms.NativeWindow'가 포함 된 경우에도 여전히 'Type'SubclassedSystemMenu '가 정의되지 않았습니다.'오류가 발생합니다. 감사. –