home *** CD-ROM | disk | FTP | other *** search
- Program MenusDemo;
-
- { Demonstriert Benutzung des Units "Menus" }
-
- { Jens Gelhar 1990 }
-
- { MaxonPascal3-Anpassung / Test: Falk Zühlsdorff (PackMAN) 1994 }
-
- Uses Crt;
- From Windows Uses Menus;
-
- Var c : Char;
- x, y : integer;
-
- Begin
- WindowTitles('Menü-Demo', Str(-1));
- AddMenu(10, 'Projekt', true);
- AddItem( 0, 0, 'Open', ' ');
- AddItem(12, 0, 'Close', 'S');
- AddItem(24, 0, 'Quit', 'Q');
- AddMenu(100, 'Edit', true);
- AddItem( 0, 0, 'Cut', 'X');
- AddItem(12, 0, 'Copy', 'C');
- AddItem(24, 0, 'Paste', 'P');
- AddItem(36, 0, 'Delete All', ' ');
- AddMenu(200, 'Optionen', true);
- AddItem( 0, 0, 'Farbe', ' ');
- AddSubItem( 0, CheckOff, ' Schwarz', '0'); MutualExclude(%1110);
- AddSubItem(12, CheckOn, ' Weiß', '1'); MutualExclude(%1101);
- AddSubItem(24, CheckOff, ' Blau', '2'); MutualExclude(%1011);
- AddSubItem(36, CheckOff, ' Rot', '3'); MutualExclude(%0111);
- AddItem(12, 0, 'Stil', ' ');
- AddSubItem( 0, 0, 'Normal', 'N'); MutualExclude(%110);
- AddSubItem(12, ToggleOff, ' Fett' , 'F'); MutualExclude(%001);
- AddSubItem(24, ToggleOff, ' Kursiv', 'K'); MutualExclude(%001);
- AddMenu(300, 'Special', true);
- AddItem( 0, CheckOn, ' Himpelsoft', 'H'); MutualExclude(%110);
- AddItem(12, CheckOff, ' Maxon', ' '); MutualExclude(%101);
- AddItem(24, CheckOff, ' B**land', ' '); MutualExclude(%010);
-
- AddIDCMP(MOUSEBUTTONS);
-
- REPEAT
-
- c := ReadKey;
- If MenuPicked Then
- While MenuPicked Do
- Begin
- Writeln(PickedMenu:20, PickedItem:10, PickedSubItem:10 );
-
- If (PickedMenu=2) and (PickedItem=0) Then
- { Untermenü "Farbe" }
- Writeln('Farbwechsel: *****', #e, PickedSubItem+30,'m***');
-
- If (PickedMenu=2) and (PickedItem=1) Then
- { Untermenü "Stil" }
- Begin
- Write(#e'0mStilwechsel: *****'); { Normalen Stil setzen }
- If MenuChecked(2,1,1) Then Write(#e'1m'); { Fett }
- If MenuChecked(2,1,2) Then Write(#e'3m'); { Kursiv }
- Writeln ('*****')
- End;
-
- NextPicked
- End
-
- Else
- If MouseClicked Or RightButtonPressed Then
- Begin
- x := MouseX;
- y := MouseY;
- GotoXY( x div 8, y div 8); { Cursor setzen }
- If RightButtonPressed Then Write('X')
- Else Write('O');
- GotoXY (1, 1);
- End
- Else
- Writeln('Zeichen #',ord(c));
- Until WindowClosed Or (c=#13) Or ((PickedMenu=0) and (PickedItem=2))
- End.
-