VB-Homepage Tipp 127

Gruppieren von Menüeinträgen

Bei Optionsbuttons ist Ihnen die Funktionalität bekannt, das immer nur einer der
Button aktiv sein kann, genau dies soll hier ebenfalls erreicht werden, allerdings mit Menüeinträgen, denn oft gibt es auch da Funktionen, die nicht gleichzeitig aktiv sein können.

menugrup.vbp
Form=menugrup.frm
ProjWinSize=71,552,248,215
ProjWinShow=2
IconForm="Form1"
Title="menugrup"
ExeName32="menugrup.exe"
Name="Projekt1"
HelpContextID="0"
StartMode=0
VersionCompatible32="0"
MajorVer=1
MinorVer=0
RevisionVer=0
AutoIncrementVer=0
ServerSupportFiles=0

menugrup.frm
VERSION 4.00
Begin VB.Form Form1
Caption = "VB-Homepage Tipp"
ClientHeight = 1860
ClientLeft = 1140
ClientTop = 1800
ClientWidth = 3855
Height = 2550
Left = 1080
LinkTopic = "Form1"
ScaleHeight = 1860
ScaleWidth = 3855
Top = 1170
Width = 3975
Begin VB.Label Label3
Alignment = 2 'Center
Caption = "Menüeinträge zu Gruppen zusammenfassen."
Height = 255
Left = 120
TabIndex = 2
Top = 1560
Width = 3615
End
Begin VB.Label Label2
Alignment = 2 'Center
Caption = "Gefunden auf Cobbs Inside Visiual Basic"
Height = 255
Left = 120
TabIndex = 1
Top = 1320
Width = 3615
End
Begin VB.Label Label1
Alignment = 2 'Center
BackStyle = 0 'Transparent
BorderStyle = 1 'Fixed Single
BeginProperty Font {0BE35203-8F91-11CE-9DE3-00AA004BB851}
Name = "Times New Roman"
Size = 18
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 975
Left = 120
TabIndex = 0
Top = 240
Width = 3615
End
Begin VB.Menu Show
Caption = "&Anzeige"
Begin VB.Menu Uhr
Caption = "&Uhrzeit"
End
Begin VB.Menu DatUhr
Caption = "&Datum && Uhrzeit"
End
Begin VB.Menu TagDatUhr
Caption = "&Tag && Datum && Uhrzeit"
End
Begin VB.Menu Line
Caption = "-"
End
Begin VB.Menu exit
Caption = "&Ende"
End
End
End
Attribute VB_Name = "Form1"
Attribute VB_Creatable = False
Attribute VB_Exposed = False
Option Explicit
' API-Funktion zum Setzen der Radio - Checkmark
Private Declare Function CheckMenuRadioItem Lib "user32" (ByVal hMenu As Long, ByVal nIdFirst As Long, ByVal nIdLast As Long, ByVal nIdCheck As Long, ByVal uFlags As Long) As Long
Private Const MF_BYPOSITION = &H400&
' API-Funktionen zum Ermitteln der Menu - Handles
Private Declare Function GetMenu Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function GetSubMenu Lib "user32" (ByVal hMenu As Long, ByVal nPos As Long) As Long
Private Sub mnuMood_Click(Index As Integer)
Dim hMenu As Long
' Handle des Menüs holen
hMenu = GetMenu(hwnd)
hMenu = GetSubMenu(hMenu, 0)
' Radio-Checkmark setzen
CheckMenuRadioItem hMenu, 0, 2, Index, MF_BYPOSITION
End Sub
Private Sub DatUhr_Click()
mnuMood_Click (1)
Label1 = Format(Date, "DD.MM.YYYY") & " / " & Format(Time, "HH:NN") & " Uhr"
End Sub
Private Sub exit_Click()
Unload Me
Set Form1 = Nothing
End
End Sub
Private Sub Form_Load()
mnuMood_Click (0)
Label1 = Format(Time, "HH:NN") & " Uhr"
End Sub
Private Sub TagDatUhr_Click()
mnuMood_Click (2)
Label1 = Format(Date, "DDDD, DD.MM.YYYY") & " / " & Format(Time, "HH:NN") & " Uhr"
End Sub
Private Sub Uhr_Click()
mnuMood_Click (0)
Label1 = Format(Time, "HH:NN") & " Uhr"
End Sub

Um den Code zu nutzen, erstellen Sie sich mit einem Editor (z.Bsp. Notepad) Dateien die Sie wie angegeben benennen und kopieren Sie den Code hinein. Speichern Sie Ihre Datei ab und öffnen Sie das Projekt entweder direkt aus einem Dateimanager oder öffnen Sie Ihre VB Software und laden sich das Projekt.

Tipp-Download

Quelle : Cobbs Inside VB

Zurück zur Übersichtsseite