回 帖 发 新 帖 刷新版面

主题:[原创]QB7.1WINDOW界面知识

启动QB时要加参数 /L UITBEFR

要先声明才能用好
' ===========================================================================
'
' DDS.BAS Include bi
'
' ===========================================================================
' ===========================================================================
' Decls, Include
' ===========================================================================
DEFINT A-Z
'$INCLUDE: 'general.bi'
'$INCLUDE: 'mouse.bi'
'$INCLUDE: 'menu.bi'
'$INCLUDE: 'window.bi'
COMMON SHARED /uitools/ GloMenu           AS MenuMiscType
COMMON SHARED /uitools/ GloTitle()        AS MenuTitleType
COMMON SHARED /uitools/ GloItem()         AS MenuItemType
COMMON SHARED /uitools/ GloWindow()       AS windowType
COMMON SHARED /uitools/ GloButton()       AS buttonType
COMMON SHARED /uitools/ GloEdit()         AS EditFieldType
COMMON SHARED /uitools/ GloStorage        AS WindowStorageType
COMMON SHARED /uitools/ GloWindowStack()  AS INTEGER
COMMON SHARED /uitools/ GloBuffer$()
DIM GloTitle(MAXMENU)           AS MenuTitleType
DIM GloItem(MAXMENU, MAXITEM)   AS MenuItemType
DIM GloWindow(MAXWINDOW)        AS windowType
DIM GloButton(MAXBUTTON)        AS buttonType
DIM GloEdit(MAXEDITFIELD)       AS EditFieldType
DIM GloWindowStack(MAXWINDOW)   AS INTEGER
DIM GloBuffer$(MAXWINDOW + 1, 2)
' =======================================================================
' Initialize
' =======================================================================
'--------------------------------------
说明:
MouseShow     '显示鼠标
Alert         '显示对话框:参数(样式%,显示内容$,X%,W%,Y%,H%,按钮$,按钮$,按钮$
列:
X=alert(4,"wode",10,28,14,50,"OK","","")
显示一个对话框 一个按钮 显示内容为 "wode",样式4是显示内容居中。


回复列表 (共2个回复)

沙发

这是我做的一个;
启动QB时加参数 /L UITBEFR
-----------------------------------
DECLARE SUB SetupDesktop ()
'$INCLUDE: 'general.bi'
'$INCLUDE: 'mouse.bi'
'$INCLUDE: 'menu.bi'
'$INCLUDE: 'window.bi'
DECLARE SUB MonoDisplay ()
DECLARE SUB SetupMenu ()
DECLARE SUB ColorDisplay ()
COMMON SHARED /uitools/ GloMenu           AS MenuMiscType
COMMON SHARED /uitools/ GloTitle()        AS MenuTitleType
COMMON SHARED /uitools/ GloItem()         AS MenuItemType
COMMON SHARED /uitools/ GloWindow()       AS windowType
COMMON SHARED /uitools/ GloButton()       AS buttonType
COMMON SHARED /uitools/ GloEdit()         AS EditFieldType
COMMON SHARED /uitools/ GloStorage        AS WindowStorageType
COMMON SHARED /uitools/ GloWindowStack()  AS INTEGER
COMMON SHARED /uitools/ GloBuffer$()
DIM GloTitle(MAXMENU)           AS MenuTitleType
DIM GloItem(MAXMENU, MAXITEM)   AS MenuItemType
DIM GloWindow(MAXWINDOW)        AS windowType
DIM GloButton(MAXBUTTON)        AS buttonType
DIM GloEdit(MAXEDITFIELD)       AS EditFieldType
DIM GloWindowStack(MAXWINDOW)   AS INTEGER
DIM GloBuffer$(MAXWINDOW + 1, 2)
DIM SHARED DisplayType          AS INTEGER
MenuInit
ColorDisplay
WindowInit
MouseShow
ColorDisplay
LOCATE 1, 25
DemoFinished = FALSE
WHILE NOT DemoFinished
kbd$ = MenuInkey$
WHILE MenuCheck(2)
GOSUB MenuTrap
WEND
WEND
MouseHide
COLOR 15, 0
CLS
END
MenuTrap:
    menu = MenuCheck(0)
    item = MenuCheck(1)

    SELECT CASE menu
        CASE 1
            SELECT CASE item
                CASE 1 TO 9:  X = Alert(4, "|ChaidanA in Menu" + STR$(item), 10, 28, 14, 50, "OK", "", "")
                CASE 10
                X = Alert(4, "|Exit To Windows?", 10, 28, 14, 50, "Yse", "No", "")
                IF X = 1 THEN
                DemoFinished = TRUE
                END IF
            END SELECT
        CASE 2
            SELECT CASE item
                CASE 1: ColorDisplay
                CASE 2: MonoDisplay
            END SELECT
        CASE 3
            SELECT CASE item
                CASE 1 TO 6: X = Alert(4, "|ChaidanC in Menu" + STR$(item), 10, 28, 14, 50, "OK", "", "")
            END SELECT
        CASE ELSE
    END SELECT
RETURN

DEFINT A-Z
SUB ColorDisplay
    DisplayType = TRUE
    MouseHide
    SetupMenu
    MenuSetState 2, 1, 2
    MenuSetState 2, 2, 1
    SetupDesktop
    MenuShow
    MouseShow
END SUB

SUB MonoDisplay
    DisplayType = FALSE
    MouseHide
    SetupMenu
    MenuSetState 2, 1, 1
    MenuSetState 2, 2, 2
    SetupDesktop
    MenuShow
    MouseShow
END SUB

DEFSNG A-Z
SUB SetupDesktop STATIC

    MouseHide

    WIDTH , 25

    IF DisplayType THEN
        COLOR 15, 1      'Color
    ELSE
        COLOR 15, 0      'Monochrome
    END IF
    CLS

    FOR a = 2 TO 80 STEP 4
        FOR B = 2 TO 25 STEP 2
            LOCATE B, a
            PRINT CHR$(250);
        NEXT B
    NEXT a

    MouseShow
END SUB

DEFINT A-Z
SUB SetupMenu
    
    MenuSet 1, 0, 1, "ChaidanA", 8
    MenuSet 1, 1, 1, "ZiChaidanq", 10
    MenuSet 1, 2, 1, "ZiChaidanw", 10
    MenuSet 1, 3, 1, "ZiChaidane", 10
    MenuSet 1, 4, 1, "ZiChaidanr", 10
    MenuSet 1, 5, 1, "ZiChaidant", 10
    MenuSet 1, 6, 1, "ZiChaidany", 10
    MenuSet 1, 7, 1, "ZiChaidanu", 10
    MenuSet 1, 8, 1, "ZiChaidani", 10
    MenuSet 1, 9, 1, "-", 1
    MenuSet 1, 10, 1, "Exit", 2

    MenuSet 2, 0, 1, "ChaidanB", 8
    MenuSet 2, 1, 1, "ZiChaidanq", 10
    MenuSet 2, 2, 1, "ZiChaidanw", 10


    MenuSet 3, 0, 1, "ChaidanC", 8
    MenuSet 3, 1, 1, "ZiChaidanq", 10
    MenuSet 3, 2, 1, "ZiChaidanw", 10
    MenuSet 3, 3, 1, "ZiChaidanq", 10

    IF NOT DisplayType THEN
        MenuColor 0, 7, 15, 8, 7, 0, 15   'Best for monochrome and colors
    ELSE
        MenuColor 0, 7, 4, 8, 15, 0, 12   'Best for color
    END IF

    MenuPreProcess

END SUB

DEFSNG A-Z
 

板凳

菜单说明
------------------------------------------
MenuInit '初始化菜单
Menuset(R%,X%,Y%,TEXT$,TEX%)   
R为第几个菜单;
X为菜单序号;
TEXT为标题;
TEX是加亮显示文本的第几个字符;
列:
MenuSet 1,0,1,"WODE",1
MenuSet1,1,1,"WODE1",2
要想显示菜单;
还要加:
MenuPreProcess
MenuShow

我来回复

您尚未登录,请登录后再回复。点此登录或注册