vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Neuen Menü-Eintrag auswerten 
Autor: ModeratorDaveS (Moderator)
Datum: 10.03.09 13:05

Also, das ist C# (d.h. .Net) und nicht C, und lässt sich bei unzähligen gängigen Websites automatisch konvertieren, wenn man selber mit den paar Zeilen nicht zurechtkommt. Bei mir hat's so auf Anhieb geklappt.

Imports System.Runtime.InteropServices
 
Public Class Form1
    Inherits Form
 
#Region "Win32 API Stuff"
 
    ' Define the Win32 API methods we are going to use
    <DllImport("user32.dll")> _
    Private Shared Function GetSystemMenu(ByVal hWnd As IntPtr, ByVal bRevert _
    As Boolean) As IntPtr
    End Function
 
    <DllImport("user32.dll")> _
    Private Shared Function InsertMenu(ByVal hMenu As IntPtr, ByVal wPosition _
    As Int32, ByVal wFlags As Int32, ByVal wIDNewItem As Int32, ByVal lpNewItem _
    As String) As Boolean
    End Function
 
    ' Define our Constants we will use
    Public Const WM_SYSCOMMAND As Int32 = &H112
    Public Const MF_SEPARATOR As Int32 = &H800
    Public Const MF_BYPOSITION As Int32 = &H400
    Public Const MF_STRING As Int32 = &H0
 
#End Region
 
    ' The constants we'll use to identify our custom system menu items
    Public Const _SettingsSysMenuID As Int32 = 1000
    Public Const _AboutSysMenuID As Int32 = 1001
 
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) _
      Handles MyBase.Load
 
        ' Get the Handle for the Forms System Menu
        Dim systemMenuHandle As IntPtr = GetSystemMenu(Me.Handle, False)
 
        ' Create our new System Menu items just before the Close menu item
        InsertMenu(systemMenuHandle, 5, MF_BYPOSITION Or MF_SEPARATOR, 0, _
          String.Empty)
        ' <-- Add a menu seperator
        InsertMenu(systemMenuHandle, 6, MF_BYPOSITION, _SettingsSysMenuID, _
          "Settings...")
        InsertMenu(systemMenuHandle, 7, MF_BYPOSITION, _AboutSysMenuID, _
        "About...")
 
    End Sub
 
    Protected Overrides Sub WndProc(ByRef m As Message)
 
        ' Check if a System Command has been executed
        If m.Msg = WM_SYSCOMMAND Then
            ' Execute the appropriate code for the System Menu item that was 
            ' clicked
            Select Case m.WParam.ToInt32()
                Case _SettingsSysMenuID
                    MessageBox.Show("""Settings"" was clicked")
                    Exit Select
                Case _AboutSysMenuID
                    MessageBox.Show("""About"" was clicked")
                    Exit Select
            End Select
        End If
 
        MyBase.WndProc(m)
 
    End Sub
 
End Class

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Neuen Menü-Eintrag auswerten1.230Üggi10.03.09 10:54
Re: Neuen Menü-Eintrag auswerten828ModeratorDaveS10.03.09 10:59
Re: Neuen Menü-Eintrag auswerten864Üggi10.03.09 12:27
Re: Neuen Menü-Eintrag auswerten870ModeratorDaveS10.03.09 13:05
Re: Neuen Menü-Eintrag auswerten773Üggi10.03.09 13:24
Re: Neuen Menü-Eintrag auswerten784Üggi13.03.09 16:48

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel