⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 dybb.prg

📁 包括了6个VFP程序设计实例
💻 PRG
字号:
********************************************************
*
*         程序名:C:\RSGL\PRG\SJRK.PRG
*
*       功能描述:屏幕格式程序
*
*           日期:1999年08月06日
*
********************************************************

*** 设置系统开关
SET ESCAPE OFF
SET TALK OFF
SET SAFETY OFF
SET HELP OFF

*** 清除键盘定义
CLEAR MACROS
PUSH  KEY CLEAR

PRIVATE m.__QMFlag__, m.PRGFile

m.__QMFlag__ = .F.

m.PRGFile = ''

*** ESCAPE键退出
ON KEY LABEL ESCAPE DO ExitProc

*** 定义屏幕格式窗口
DO WHILE NOT m.__QMFlag__
   DO DefWin
   IF (NOT EMPTY(m.PRGFile))
       DO &PRGFile
   ENDIF
ENDDO

ON KEY LABEL ESCAPE
POP KEY
ON KEY LABEL ESCAPE DO EXITPROC
SET HELP ON

RETURN

******************************************************************
*
*    过    程:DefWin
*
*    功    能:定义屏幕格式窗口
*
*    参    数:无
*
******************************************************************
PROCEDURE DefWin

  SET PROC TO PGSUBPRG.APP

  m.PRGFile = ''

  PRIVATE m.ScrFontWidth, m.ScrFontHeight, m.WinFontWidth, m.WinFontHeight, m.ObjFontWidth, m.ObjFontHeight, m.button

  m.button = 0
  m.ScrFontWidth = 0
  m.ScrFontHeight = 0
  m.WinFontWidth = 0
  m.WinFontHeight = 0
  m.ObjFontWidth = 0
  m.ObjFontHeight = 0

  *** 计算屏幕窗口字体宽度和高度
  DO GetWFontWH WITH 'SCREEN', m.ScrFontWidth, m.ScrFontHeight

  IF WEXIST('LrWindow') AND WTITLE('LrWindow') == '屏幕格式窗口'
     RELEASE WINDOW LrWindow
  ENDIF

  SET PALETTE OFF
  DEFINE WINDOW LrWindow IN SCREEN ;
     FROM 0 / m.ScrFontHeight, 10 / m.ScrFontWidth TO 412 / m.ScrFontHeight, 634 / m.ScrFontWidth ;
     FONT 'System', 10 ;
     STYLE 'B' ;
     NOCLOSE NOMINIMIZE SYSTEM GROW ;
     FILL FILE LOCFILE('RSMAIN.BMP', 'BMP|ICO', '窗口壁纸文件?') ;
     COLOR RGB(, , , 192, 192, 192)

  SET PALETTE ON
  ACTIVATE WINDOW LrWindow NOSHOW
  MOVE WINDOW LRWINDOW CENTER

  *** 计算窗口LrWindow字体宽度和高度
  DO GetWFontWH WITH 'LrWindow', m.WinFontWidth, m.WinFontHeight

  @ 227 / m.WinFontHeight, 83 / m.WinFontWidth TO 363 / m.WinFontHeight, 530 / m.WinFontWidth ;
    PATTERN 1 PEN 1, 0 ;
    COLOR RGB(, , , 192, 192, 192)

  DO Draw3DFrame WITH 227 / m.WinFontHeight, 83 / m.WinFontWidth, 361 / m.WinFontHeight, 528 / m.WinFontWidth, 0, 4, 192, 192, 192, 0

  DO Draw3DPanel WITH 234 / m.WinFontHeight, 125 / m.WinFontWidth, 354 / m.WinFontHeight, 521 / m.WinFontWidth, 0, 1, 192, 192, 192, 0, .F.

  DO Draw3DPanel WITH 234 / m.WinFontHeight, 90 / m.WinFontWidth, 354 / m.WinFontHeight, 121 / m.WinFontWidth, 0, 1, 192, 192, 192, 0, .F.

  DO Draw3DText WITH 243 / m.WinFontHeight, 93 / m.WinFontWidth, '打', '方正魏碑简体', 18, 'TN', 0, 128, 192, 255, 255, 255, 1

  DO Draw3DText WITH 268 / m.WinFontHeight, 93 / m.WinFontWidth, '印', '方正魏碑简体', 18, 'TN', 0, 128, 192, 255, 255, 255, 1

  DO Draw3DText WITH 293 / m.WinFontHeight, 93 / m.WinFontWidth, '报', '方正魏碑简体', 18, 'TN', 0, 128, 192, 255, 255, 255, 1

  DO Draw3DText WITH 318 / m.WinFontHeight, 93 / m.WinFontWidth, '表', '方正魏碑简体', 18, 'TN', 0, 128, 192, 255, 255, 255, 1

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 243 / m.WinFontHeight, 134 / m.WinFontWidth GET m.button ;
    PICTURE '@*HN  职工花名册' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 157 / m.ObjFontWidth ;
    VALID ButtonValid('ZGHMC.PRG', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 264 / m.WinFontHeight, 134 / m.WinFontWidth GET m.button ;
    PICTURE '@*HN  分科人员花名册' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 157 / m.ObjFontWidth ;
    VALID ButtonValid('FKHMC.PRG', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 285/ m.WinFontHeight, 134/ m.WinFontWidth GET m.button ;
    PICTURE '@*HN  党员花名册' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 157 / m.ObjFontWidth ;
    VALID ButtonValid('DYHMC.PRG', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 306/ m.WinFontHeight, 134/ m.WinFontWidth GET m.button ;
    PICTURE '@*HN  干部花名册' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 157 / m.ObjFontWidth ;
    VALID ButtonValid('GBHMC.PRG', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 327 / m.WinFontHeight, 134/ m.WinFontWidth GET m.button ;
    PICTURE '@*HN 离退休(职)名册' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 157 / m.ObjFontWidth ;
    VALID ButtonValid('', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 243 / m.WinFontHeight, 267 / m.WinFontWidth GET m.button ;
    PICTURE '@*HN 三讲教育人员花册' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 157 / m.ObjFontWidth ;
    VALID ButtonValid('SJHMC.PRG', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 264 / m.WinFontHeight, 267 / m.WinFontWidth GET m.button ;
    PICTURE '@*HN 专业技术花名册' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 166/ m.ObjFontWidth ;
    VALID ButtonValid('ZYJSHMC.PRG', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 285 / m.WinFontHeight, 267 / m.WinFontWidth GET m.button ;
    PICTURE '@*HN 工作人员考核表' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 166/ m.ObjFontWidth ;
    VALID ButtonValid('GZRYKHB.PRG', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 306 / m.WinFontHeight, 267 / m.WinFontWidth GET m.button ;
    PICTURE '@*HN 专技人员考核表' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 166/ m.ObjFontWidth ;
    VALID ButtonValid('ZYJSKHB.PRG', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 327 / m.WinFontHeight, 267 / m.WinFontWidth GET m.button ;
    PICTURE '@*HN 2001年调资呈报表' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 166/ m.ObjFontWidth ;
    VALID ButtonValid('2001TZMX.PRG', 1, .F.)

  *** 计算对象字体宽度和高度
  DO GetFontWH WITH '楷体_GB2312', 14, 'N', m.ObjFontWidth, m.ObjFontHeight
  @ 243 / m.WinFontHeight, 407 / m.WinFontWidth GET m.button ;
    PICTURE '@*HN 在职工资摸底' ;
    FONT '楷体_GB2312', 12 ;
    STYLE 'N' ;
    SIZE 25 / m.ObjFontHeight, 107 / m.ObjFontWidth ;
    VALID ButtonValid('SJHMC.PRG', 1, .F.)

  ACTIVATE WINDOW LrWindow

  READ MODAL CYCLE

  RELEASE WINDOW LrWindow

  SET PROC TO

RETURN

******************************************************************
*
*    函    数:ButtonValid
*
*    功    能:命令按钮Valid函数
*
*    参    数:RunFileName -- 按钮运行文件名
*             RunFileType -- 按钮运行文件类型
*             TerminateRead -- 退出标志
*
******************************************************************
FUNCTION  ButtonValid
PARAMETER RunFileName, RunFileType, TerminateRead

  m.__QMFlag__ = m.TerminateRead

  *** 按钮运行文件为空则返回
  IF EMPTY(m.RunFileName)
     RETURN
  ENDIF

  DO CASE

     CASE m.RunFileType = 1 && FoxPro程序
          m.PRGFile = m.RunFileName
          CLEAR READ

     CASE m.RunFileType = 2 && Windos程序
          RUN /N1 &RunFileName

     CASE m.RunFileType = 3 && Dos程序
          RUN &RunFileName

     CASE m.RunFileType = 4 && 表单
          DO FORM &RunFileName

  ENDCASE

RETURN

******************************************************************
*
*    过    程:ExitProc
*
*    功    能:退出处理
*
*    参    数:无
*
******************************************************************
PROCEDURE ExitProc

  m.__QMFlag__ = .T.
  CLEAR READ

RETURN

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -