'Menucol.bas Ray Thomas January 2002
'Modified 01/29/2022
' SCREEN 12 ' No idea why this is generating a compiler error.
DIM MenuItem
(60) AS STRING * 15 'Define the menu item array DIM XMenuPosn
AS INTEGER 'Controls the menu item X positions DIM YMenuPosn
AS INTEGER 'Controls the menu item Y positions
DATA Choice
1, Choice
2, Longer Choice
3, Choice
4, Longer Choice
5 DATA Choice
6, Choice
7, Choice
8, Choice
9, Choice
10 DATA Choice
11, Choice
12, Choice
13, Choice
14, Choice
15 DATA Choice
16, Choice
17, Choice
18, Choice
19, Choice
20 DATA Choice
21, Choice
22, Choice
23, Choice
24, Choice
25 DATA Choice
26, Choice
27, Choice
28, Choice
29, Choice
30 DATA Choice
31, Choice
32, Choice
33, Choice
34, Choice
35 DATA Choice
36, Choice
37, Choice
38, Choice
39, Choice
40 DATA Choice
41, Choice
42, Choice
43, Choice
44, Choice
45 DATA Choice
46, Choice
47, Choice
48, Choice
49, Choice
50 DATA Choice
51, Choice
52, Choice
53, Choice
54, Choice
55 DATA Choice
56, Choice
57, Choice
58, Choice
59, Choice
60
ChooseItem = 1 'Starting point of highlighted menu item
XMenuPosn = 10 'X starting point of menu
YMenuPosn = 3 'Y starting point of menu
MenuLine = 4 'Number of columns in the menu
'*** Fill the MenuItme Array ***
'*** Centre the Text ***
Temp$
= SPACE$((15 - LEN(Temp$
)) / 2) + Temp$
MenuItem(Count) = Temp$
'*** get cursor key movements and redraw menu ***
'Check for Esc key
PRINT "Item chosen ="; MenuItem
(ChooseItem
)
DrawMenu:
'Draw the menu
MoveUp:
IF ChooseItem
<= MenuLine
THEN ChooseItem
= UBOUND(MenuItem$
) - (MenuItem
MOD MenuLine
) ChooseItem = ChooseItem - MenuLine
MoveDown:
ChooseItem
= ChooseItem
MOD MenuLine
ChooseItem = ChooseItem + MenuLine
IF ChooseItem
= 0 THEN ChooseItem
= MenuLine
Moveleft:
ChooseItem = ChooseItem - 1
MoveRight:
ChooseItem = ChooseItem + 1
TopCol:
ChooseItem
= ChooseItem
MOD MenuLine
IF ChooseItem
= 0 THEN ChooseItem
= MenuLine
BottomCol:
ChooseItem
= UBOUND(MenuItem$
) - (MenuLine
- (ChooseItem
MOD MenuLine
))IF MenuLine
- (ChooseItem
MOD MenuLine
) = MenuLine
THEN ChooseItem
= UBOUND(MenuItem$
)