home *** CD-ROM | disk | FTP | other *** search
/ Programming Tool Box / SIMS_2.iso / demo / mnuvbx / mnudemo.frm < prev    next >
Text File  |  1994-01-04  |  11KB  |  383 lines

  1. VERSION 2.00
  2. Begin Form Form1 
  3.    BorderStyle     =   1  'Fixed Single
  4.    Caption         =   "Demo zum Menⁿ - Control"
  5.    ClientHeight    =   3240
  6.    ClientLeft      =   1848
  7.    ClientTop       =   2208
  8.    ClientWidth     =   6324
  9.    Height          =   3936
  10.    Icon            =   MNUDEMO.FRX:0000
  11.    Left            =   1824
  12.    LinkTopic       =   "Form1"
  13.    ScaleHeight     =   3240
  14.    ScaleWidth      =   6324
  15.    Top             =   1536
  16.    Width           =   6372
  17.    Begin SSPanel paStatus 
  18.       Align           =   2  'Align Bottom
  19.       Alignment       =   1  'Left Justify - MIDDLE
  20.       BackColor       =   &H00C0C0C0&
  21.       BevelOuter      =   1  'Inset
  22.       BevelWidth      =   2
  23.       Caption         =   "paStatus"
  24.       FloodShowPct    =   0   'False
  25.       FontBold        =   0   'False
  26.       FontItalic      =   0   'False
  27.       FontName        =   "MS Sans Serif"
  28.       FontSize        =   7.8
  29.       FontStrikethru  =   0   'False
  30.       FontUnderline   =   0   'False
  31.       ForeColor       =   &H00000000&
  32.       Height          =   336
  33.       Left            =   0
  34.       TabIndex        =   14
  35.       Top             =   2904
  36.       Width           =   6324
  37.    End
  38.    Begin MNUWATCH MNUWATCH1 
  39.       Left            =   1056
  40.       Top             =   144
  41.    End
  42.    Begin SSFrame Frame3D1 
  43.       Caption         =   " Menⁿ Informationen"
  44.       ForeColor       =   &H00800000&
  45.       Height          =   2220
  46.       Left            =   3360
  47.       TabIndex        =   15
  48.       Top             =   144
  49.       Width           =   2700
  50.       Begin Label txtStatus 
  51.          AutoSize        =   -1  'True
  52.          BackStyle       =   0  'Transparent
  53.          Caption         =   "Menⁿstatus"
  54.          Height          =   192
  55.          Left            =   1452
  56.          TabIndex        =   0
  57.          Top             =   336
  58.          Width           =   1668
  59.       End
  60.       Begin Label Label1 
  61.          AutoSize        =   -1  'True
  62.          BackStyle       =   0  'Transparent
  63.          Caption         =   "Menⁿstatus"
  64.          Height          =   192
  65.          Left            =   192
  66.          TabIndex        =   1
  67.          Top             =   336
  68.          Width           =   948
  69.       End
  70.       Begin Label Label2 
  71.          AutoSize        =   -1  'True
  72.          BackStyle       =   0  'Transparent
  73.          Caption         =   "MenⁿID"
  74.          Height          =   192
  75.          Left            =   192
  76.          TabIndex        =   2
  77.          Top             =   576
  78.          Width           =   636
  79.       End
  80.       Begin Label txtMenID 
  81.          AutoSize        =   -1  'True
  82.          BackStyle       =   0  'Transparent
  83.          Caption         =   "MenID"
  84.          Height          =   204
  85.          Left            =   1452
  86.          TabIndex        =   3
  87.          Top             =   576
  88.          Width           =   540
  89.       End
  90.       Begin Label Label3 
  91.          AutoSize        =   -1  'True
  92.          BackStyle       =   0  'Transparent
  93.          Caption         =   "Selektiert"
  94.          Height          =   192
  95.          Left            =   192
  96.          TabIndex        =   4
  97.          Top             =   816
  98.          Width           =   804
  99.       End
  100.       Begin Label txtSelMode 
  101.          AutoSize        =   -1  'True
  102.          BackStyle       =   0  'Transparent
  103.          Caption         =   "Maus"
  104.          Height          =   192
  105.          Left            =   1452
  106.          TabIndex        =   5
  107.          Top             =   816
  108.          Width           =   456
  109.       End
  110.       Begin Label Label4 
  111.          AutoSize        =   -1  'True
  112.          BackStyle       =   0  'Transparent
  113.          Caption         =   "Menⁿ Type"
  114.          Height          =   192
  115.          Left            =   192
  116.          TabIndex        =   6
  117.          Top             =   1056
  118.          Width           =   936
  119.       End
  120.       Begin Label txtMenMode 
  121.          AutoSize        =   -1  'True
  122.          BackStyle       =   0  'Transparent
  123.          Caption         =   "Selektiert"
  124.          Height          =   192
  125.          Left            =   1452
  126.          TabIndex        =   7
  127.          Top             =   1056
  128.          Width           =   804
  129.       End
  130.       Begin Label txtCheckMode 
  131.          AutoSize        =   -1  'True
  132.          BackStyle       =   0  'Transparent
  133.          Caption         =   "Checked"
  134.          Height          =   192
  135.          Left            =   1452
  136.          TabIndex        =   8
  137.          Top             =   1296
  138.          Width           =   744
  139.       End
  140.       Begin Label Label5 
  141.          AutoSize        =   -1  'True
  142.          BackStyle       =   0  'Transparent
  143.          Caption         =   "Checked"
  144.          Height          =   192
  145.          Left            =   192
  146.          TabIndex        =   9
  147.          Top             =   1296
  148.          Width           =   744
  149.       End
  150.       Begin Label Label6 
  151.          AutoSize        =   -1  'True
  152.          BackStyle       =   0  'Transparent
  153.          Caption         =   "Enabled"
  154.          Height          =   192
  155.          Left            =   192
  156.          TabIndex        =   10
  157.          Top             =   1536
  158.          Width           =   708
  159.       End
  160.       Begin Label txtEnabledMode 
  161.          AutoSize        =   -1  'True
  162.          BackStyle       =   0  'Transparent
  163.          Caption         =   "Enabled"
  164.          Height          =   192
  165.          Left            =   1440
  166.          TabIndex        =   11
  167.          Top             =   1536
  168.          Width           =   708
  169.       End
  170.       Begin Label Label7 
  171.          AutoSize        =   -1  'True
  172.          BackStyle       =   0  'Transparent
  173.          Caption         =   "System Menⁿ"
  174.          Height          =   192
  175.          Left            =   192
  176.          TabIndex        =   12
  177.          Top             =   1776
  178.          Width           =   1116
  179.       End
  180.       Begin Label txtSysMenu 
  181.          AutoSize        =   -1  'True
  182.          BackStyle       =   0  'Transparent
  183.          Caption         =   "SysMenⁿ"
  184.          Height          =   192
  185.          Left            =   1452
  186.          TabIndex        =   13
  187.          Top             =   1776
  188.          Width           =   768
  189.       End
  190.    End
  191.    Begin Menu mnFile 
  192.       Caption         =   "&File"
  193.       Index           =   1
  194.       Begin Menu mnOpen 
  195.          Caption         =   "&Open"
  196.       End
  197.       Begin Menu mnExit 
  198.          Caption         =   "&Exit"
  199.       End
  200.       Begin Menu mnCheck 
  201.          Caption         =   "Check"
  202.          Checked         =   -1  'True
  203.       End
  204.    End
  205.    Begin Menu mnEdit 
  206.       Caption         =   "&Edit"
  207.       Begin Menu mnCopy 
  208.          Caption         =   "&Copy"
  209.       End
  210.    End
  211.    Begin Menu mnHelp 
  212.       Caption         =   "&Help"
  213.       Begin Menu mnAbout 
  214.          Caption         =   "&About"
  215.       End
  216.       Begin Menu mnsep 
  217.          Caption         =   "-"
  218.       End
  219.       Begin Menu mnHelpHelp 
  220.          Caption         =   "Hilfe"
  221.       End
  222.    End
  223. End
  224. Option Explicit
  225.  
  226. ' Menⁿkonstanten
  227. Const MF_MOUSESELECT = &H8000
  228. Const MF_POPUP = &H10
  229. Const MF_CHECKED = &H8
  230. Const MF_ENABLED = &H0
  231. Const MF_DISABLED = &H2
  232. Const MF_SYSMENU = &H2000
  233. Const MF_SEPARATOR = &H800
  234.  
  235. ' System Komandos (Systemmenⁿ ID┤s)
  236. Const SC_CLOSE = &HF060
  237. Const SC_MAXIMIZE = &HF030
  238. Const SC_MINIMIZE = &HF020
  239. Const SC_MOVE = &HF010
  240. Const SC_RESTORE = &HF120
  241. Const SC_TASKLIST = &HF130
  242. Const SC_SIZE = &HF000
  243.  
  244. Const MaxMenItem = 10 ' Anzahl der MenⁿeintrΣge
  245.  
  246. Dim MenHelp(1 To MaxMenItem) As String ' Feld fⁿr die Hilfetexte
  247.  
  248. '
  249. ' Menⁿpunkt nicht implementiert !
  250. '
  251. Sub FNI ()
  252.   MsgBox "Dies ist nur eine Demo zum MEN▄- VBX", 64, "Nicht Implementiert !"
  253. End Sub
  254.  
  255. Sub Form_Load ()
  256.   ' init der Menⁿstatusanzeige
  257.   txtStatus = "geschlossen"
  258.   txtSelMode = ""
  259.   txtMenID = ""
  260.   txtMenMode = ""
  261.   txtCheckMode = ""
  262.   txtEnabledMode = ""
  263.   txtSysMenu = ""
  264.   ' Init des Hilfetextfeldes
  265.   MenHelp(1) = "Datei Menu"
  266.   MenHelp(2) = "Datei ÷ffnen"
  267.   MenHelp(3) = "Programm beenden"
  268.   MenHelp(4) = "Dies ist nur ein Testeintrag"
  269.   MenHelp(5) = "Edit Menu"
  270.   MenHelp(6) = "markierten Bereich kopieren"
  271.   MenHelp(7) = "Hilfe Menu"
  272.   MenHelp(8) = "Informationen ⁿber MNUDEMO"
  273.   MenHelp(9) = "Separator"
  274.   MenHelp(10) = "Hilfe zu MNUDEMO"
  275.   paStatus = " OPTARGET Gmbh, 59065 Hamm"
  276. End Sub
  277.  
  278. '
  279. ' Anzeigen des Menⁿhilfetextes in der Statuszeile
  280. '
  281. Sub MenStatus (ID As Integer)
  282.   If ID = 0 Then
  283.     paStatus = " Separator"
  284.   Else
  285.     paStatus = " " & MenHelp(ID)
  286.   End If
  287. End Sub
  288.  
  289. '
  290. ' About Dialog anzeigen
  291. '
  292. Sub mnAbout_Click ()
  293.     frmAbout.Show 1
  294. End Sub
  295.  
  296. Sub mnCheck_Click ()
  297.     Call FNI
  298. End Sub
  299.  
  300. Sub mnCopy_Click ()
  301.   Call FNI
  302. End Sub
  303.  
  304. Sub mnExit_Click ()
  305.   End
  306. End Sub
  307.  
  308. Sub mnHelpHelp_Click ()
  309.   Call FNI
  310. End Sub
  311.  
  312. Sub mnOpen_Click ()
  313.   Call FNI
  314. End Sub
  315.  
  316. '
  317. ' Wird aufgerufen, wenn ein Menⁿ geschlossen wird.
  318. '
  319. Sub MNUWATCH1_Close ()
  320.   txtStatus = "geschlossen"   ' Status
  321.   txtSelMode = ""
  322.   txtMenID = ""
  323.   txtMenMode = ""
  324.   txtCheckMode = ""
  325.   txtEnabledMode = ""
  326.   txtSysMenu = ""
  327.   paStatus.ForeColor = QBColor(0)  ' Statuszeilentext in schwarz.
  328.   paStatus = " OPTARGET Gmbh, 59065 Hamm"
  329. End Sub
  330.  
  331. '
  332. ' Wird aufgerufen, wenn ein Menⁿ aktiviert wird.
  333. '
  334. Sub MNUWATCH1_Open ()
  335.     txtStatus = "ge÷ffnet"          ' Status anzeigen
  336.     paStatus.ForeColor = QBColor(4) ' Hilfetexte in rot.
  337. End Sub
  338.  
  339. '
  340. ' Wird aufgerufen, wenn ein Menⁿeintrag selektiert wird.
  341. '   Update der einzelnen Menⁿstatusanzeigen.
  342. '
  343. Sub MNUWATCH1_Select (MNUID As Integer, Flags As Integer)
  344.     txtMenID = IIf(((Flags And MF_SEPARATOR)), "Separator", Str$(MNUID))
  345.     txtSelMode = IIf(((Flags And MF_MOUSESELECT)), "Maus", "Tastatur")
  346.     txtMenMode = IIf(((Flags And MF_POPUP)), "PopUp Menu", "Menu")
  347.     txtCheckMode = IIf(((Flags And MF_CHECKED)), "Ja", "Nein")
  348.     txtEnabledMode = IIf(((Flags And MF_DISABLED)), "Nein", "Ja")
  349.     txtSysMenu = IIf(((Flags And MF_SYSMENU)), "Ja", "Nein")
  350.     If txtSysMenu = "Ja" Then
  351.       Call SystemMenStatus(MNUID) ' Hilfetext zum Systemmenⁿ anzeigen
  352.     Else
  353.       Call MenStatus(MNUID)       ' Hilfetext zum angewΣhltwn Menⁿpunkt anzeigen.
  354.     End If
  355. End Sub
  356.  
  357. '
  358. ' Anzeigen der Hilfetexte zum Systemmenⁿ
  359. '
  360. Sub SystemMenStatus (ID As Integer)
  361.   Select Case ID
  362.      Case SC_CLOSE
  363.        paStatus = " Programm beenden"
  364.      Case SC_MAXIMIZE
  365.        paStatus = " Fenster maximieren"
  366.      Case SC_MINIMIZE
  367.        paStatus = " Fenster als Icon darstellen"
  368.      Case SC_MOVE
  369.        paStatus = " Fenster verschieben"
  370.      Case SC_RESTORE
  371.        paStatus = " Fenster wiederherstellen"
  372.      Case SC_TASKLIST
  373.        paStatus = " Taskliste anzeigen"
  374.      Case SC_SIZE
  375.        paStatus = " Fenstergr÷▀e Σndern"
  376.      Case 0
  377.        paStatus = " Separator"
  378.      Case Else
  379.        paStatus = " System Menⁿ"
  380.   End Select
  381. End Sub
  382.  
  383.