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

📄 frmprint.frm

📁 VB编写的中小学监考老师排表软件
💻 FRM
📖 第 1 页 / 共 3 页
字号:
            Strikethrough   =   0   'False
         EndProperty
         Height          =   345
         Left            =   720
         TabIndex        =   30
         Top             =   2400
         Width           =   1335
      End
      Begin VB.CheckBox Chkpbj 
         Caption         =   "全选"
         BeginProperty Font 
            Name            =   "Arial"
            Size            =   9
            Charset         =   0
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   270
         Left            =   1440
         TabIndex        =   15
         Top             =   240
         Width           =   1095
      End
      Begin VB.ListBox Lstpbj 
         Columns         =   2
         Height          =   1680
         Left            =   240
         MultiSelect     =   2  'Extended
         TabIndex        =   9
         Top             =   480
         Width           =   2295
      End
      Begin VB.CommandButton cmdpbjok 
         Caption         =   "开始打印"
         BeginProperty Font 
            Name            =   "Arial"
            Size            =   9
            Charset         =   0
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   375
         Left            =   1560
         TabIndex        =   7
         Top             =   1920
         Width           =   975
      End
      Begin VB.Label Labpbj 
         Caption         =   "选定班级:"
         BeginProperty Font 
            Name            =   "Arial"
            Size            =   9
            Charset         =   0
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   255
         Left            =   240
         TabIndex        =   4
         Top             =   240
         Width           =   975
      End
   End
End
Attribute VB_Name = "frmprint"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'for bj js print
Dim bjs As Integer
Dim kcexp() As kctype
Dim bjexp() As bjtype
Dim nowbj As bjtype
Dim newbiao As bjkcbiao
Dim nowbiao As jsrkbiao
Dim bzmy1 As Integer
Dim njjsm() As String * 8
Dim jsm() As String * 8
Dim njjsshu() As Integer
Dim xx, yy As Integer
Dim kcm() As String * 8
Dim sname As String
Dim sheadbj, sheadjs As String

Sub drawjskb(x1 As Integer, y1 As Integer, an As Integer)
Printer.ScaleWidth = 102: Printer.ScaleHeight = 220
Printer.CurrentX = x1 + 40: Printer.CurrentY = y1 + 13
Printer.FontSize = 18
Printer.Print "教 师 课 程 表"
Printer.FontSize = 13

x0 = x1 + 1: y0 = y1 + 25

For i = 1 To 9
If i = 3 Or i = 4 Or i = 5 Or i = 6 Or i = 7 Or i = 8 Then
Printer.Line (x0 + 11, y0)-(x0 + 100, y0)
GoTo p1
End If
Printer.Line (x0, y0)-(x0 + 100, y0)
p1: y0 = y0 + 10
Next i
x0 = x1 + 1: y0 = y1 + 25
If an = 7 Then
Printer.Line (x0, y0 + 50)-(x0 + 100, y0 + 50)
Else
Printer.Line (x0, y0 + 60)-(x0 + 100, y0 + 60)
End If

x0 = x1 + 21: y0 = y1 + 25
For i = 1 To 6
'If i = 2 Then : GoTo p2
'ir i=3 then printer.line (x1+21
Printer.Line (x0, y0)-(x0, y0 + 80)
x0 = x0 + 16
Next i
Printer.Line (x1 + 12, y1 + 35)-(x1 + 12, y1 + 105)
Printer.Line (x1 + 1, y1 + 25)-(x1 + 1, y1 + 105)

Printer.CurrentX = x1 + 22: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 一"
Printer.CurrentX = x1 + 38: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 二"
Printer.CurrentX = x1 + 54: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 三"
Printer.CurrentX = x1 + 70: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 四"
Printer.CurrentX = x1 + 86: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 五"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 37.5
Printer.Print "1"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 47.5
Printer.Print "2"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 57.5
Printer.Print "3"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 67.5
Printer.Print "4"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 77.5
Printer.Print "5"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 87.5
Printer.Print "6"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 97.5
Printer.Print "7"
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 42
Printer.Print "上"

If an = 7 Then
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 63
Printer.Print "午"
Else
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 73
Printer.Print "午"
End If

If an = 7 Then
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 83
Printer.Print "下"
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 93
Printer.Print "午"
Else
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 87.5
Printer.Print "下"
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 97.5
Printer.Print "午"
End If
End Sub

Sub drawjsb(x1 As Integer, y1 As Integer)
Printer.ScaleWidth = 102: Printer.ScaleHeight = 220
Printer.CurrentX = x1 + 40: Printer.CurrentY = y1 + 13
Printer.FontSize = 18
Printer.Print "教 师 课 程 表"
Printer.FontSize = 13
x0 = x1 + 1: y0 = y1 + 25
For i = 1 To 9
If i = 3 Or i = 4 Or i = 5 Or i = 7 Or i = 8 Then
Printer.Line (x0 + 11, y0)-(x0 + 100, y0)
GoTo p1
End If
Printer.Line (x0, y0)-(x0 + 100, y0)
p1: y0 = y0 + 10
Next i
x0 = x1 + 21: y0 = y1 + 25
For i = 1 To 6
'If i = 2 Then : GoTo p2
'ir i=3 then printer.line (x1+21
Printer.Line (x0, y0)-(x0, y0 + 80)
x0 = x0 + 16
Next i
Printer.Line (x1 + 12, y1 + 35)-(x1 + 12, y1 + 105)
Printer.Line (x1 + 1, y1 + 25)-(x1 + 1, y1 + 105)

Printer.CurrentX = x1 + 22: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 一"
Printer.CurrentX = x1 + 38: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 二"
Printer.CurrentX = x1 + 54: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 三"
Printer.CurrentX = x1 + 70: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 四"
Printer.CurrentX = x1 + 86: Printer.CurrentY = y1 + 27.5
Printer.Print "    星 期 五"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 36
Printer.Print "1"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 46
Printer.Print "2"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 56
Printer.Print "3"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 66
Printer.Print "4"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 76
Printer.Print "5"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 86
Printer.Print "6"
Printer.CurrentX = x1 + 16: Printer.CurrentY = y1 + 96
Printer.Print "7"
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 43
Printer.Print "上"
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 63
Printer.Print "午"
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 83
Printer.Print "下"
Printer.CurrentX = x1 + 5.5: Printer.CurrentY = y1 + 93
Printer.Print "午"


End Sub
Sub drawbzmbiao()
Printer.ScaleWidth = 100
Printer.ScaleHeight = 240

For x0 = 20 To 80 Step 30
Printer.Line (x0, 15)-(x0, 235)
Next x0
For y0 = 15 To 235 Step 10
Printer.Line (20, y0)-(80, y0)
Next y0
Printer.CurrentX = 42: Printer.CurrentY = 7
Printer.FontSize = 16: Printer.Print "班主任名单"
Printer.CurrentX = 32: Printer.CurrentY = 18
Printer.FontSize = 14: Printer.Print "班  级"
Printer.CurrentX = 60: Printer.CurrentY = 18
Printer.Print "班 主 任"


'MsgBox "1+" + CStr(bzmy1)
End Sub

Sub drawnjjsm()
Printer.ScaleWidth = 100: Printer.ScaleHeight = 230
Printer.CurrentX = 35: Printer.CurrentY = 15
Printer.FontSize = 16
Printer.Print "教师名单(按年级分组)"
End Sub

Sub drawpkcjsm()
Printer.NewPage
Printer.ScaleWidth = 100: Printer.ScaleHeight = 200
Printer.CurrentX = 35: Printer.CurrentY = 5: Printer.FontSize = 16
Printer.Print "教师名单(按课程分组)"
xx = 5: yy = 20
Printer.CurrentX = xx: Printer.CurrentY = yy:
Printer.FontSize = 12

End Sub

Sub drawsj(x1 As Integer, y1 As Integer)
'sjhead$ = "课程时间表"

Open App.Path + "\pksj1.bin" For Binary As #1
For i = 1 To 14
Get #1, 2 * i - 1, sj1(i)
'MsgBox CStr(sj1(i))
Next i: Close #1
y0 = y1 + 10
For i = 1 To 9
x0 = x1 + 10
If i = 1 Or i = 2 Or i = 6 Or i = 9 Then x0 = x1
'Printer.CurrentX = x0: Printer.CurrentY = y0
Printer.Line (x0, y0)-(x1 + 50, y0)
y0 = y0 + 10
Next i

x0 = x1
For i = 1 To 5
'Printer.CurrentX = x0: Printer.CurrentY = y0
Printer.Line (x0, y1 + 10)-(x0, y1 + 90)
If i >= 3 Then x0 = x0 + 15: GoTo n
x0 = x0 + 10
n: Next i
y0 = y1 + 23
For i = 1 To 7
Printer.CurrentX = x1 + 14
Printer.CurrentY = y0
Printer.Print CStr(i)
y0 = y0 + 10
Next i
Printer.CurrentY = y1 + 13
Printer.CurrentX = x1 + 4
Printer.Print "段"
Printer.CurrentX = x1 + 4
Printer.CurrentY = y1 + 31
Printer.Print "上"
Printer.CurrentX = x1 + 4
Printer.CurrentY = y1 + 46
Printer.Print "午"
Printer.CurrentX = x1 + 4
Printer.CurrentY = y1 + 63
Printer.Print "下"
Printer.CurrentX = x1 + 4
Printer.CurrentY = y1 + 78
Printer.Print "午"
Printer.CurrentY = y1 + 13
Printer.CurrentX = x1 + 14
Printer.Print "节"
Printer.CurrentY = y1 + 13
Printer.CurrentX = x1 + 25
Printer.Print "开始"
Printer.CurrentY = y1 + 13
Printer.CurrentX = x1 + 40
Printer.Print "结束"
y0 = y1 + 23
x0 = x1 + 23
Printer.FontSize = 10
For i = 1 To 13 Step 2
star$ = Trim$(Str$(Fix(sj1(i) / 60))) + ":" + Trim$(Str$(sj1(i) - Fix(sj1(i) / 60) * 60))
If Fix(sj1(i) / 60) < 10 Then star$ = "0" + Trim$(star$)
If sj1(i) - Fix(sj1(i) / 60) * 60 < 10 Then star$ = Left$(star$, 3) + "0" + Right$(star$, 1)
Printer.CurrentX = x0: Printer.CurrentY = y0
Printer.Print star$
y0 = y0 + 10
Next i
x0 = x1 + 38
y0 = y1 + 23
For i = 2 To 14 Step 2
star$ = Trim$(Str$(Fix(sj1(i) / 60))) + ":" + Trim$(Str$(sj1(i) - Fix(sj1(i) / 60) * 60))
Printer.CurrentX = x0: Printer.CurrentY = y0
Printer.Print star$
y0 = y0 + 10
Next i
Printer.CurrentX = x1 + 17
Printer.CurrentY = y1 + 2
Printer.FontSize = 15
Printer.Print "课程时间表"
Printer.FontSize = 12
End Sub

Sub drawbiao(head As String)
'Printer.NewPage

Printer.ScaleWidth = 90: Printer.ScaleHeight = 240
y0 = 20
For i = 1 To 22
Printer.Line (3, y0)-(88, y0)
y0 = y0 + 10
Next i
x0 = 18
For i = 1 To 8
Printer.Line (x0, 20)-(x0, 230)
x0 = x0 + 10
Next i
Printer.Line (3, 20)-(3, 230)
'Printer.DrawWidth = 7
Printer.Line (57.7, 20)-(57.7, 230)
Printer.Line (17.7, 20)-(17.7, 230)
Printer.Line (3, 20)-(17.7, 30)
Printer.FontSize = 15
Printer.CurrentX = 39: Printer.CurrentY = 12
Printer.Print head
Printer.FontSize = 12
x0 = 22
For i = 1 To 7
Printer.CurrentX = x0
Printer.CurrentY = 23
Printer.Print CStr(i)
x0 = x0 + 10
Next i
Printer.CurrentX = 3.5
Printer.CurrentY = 26
Printer.Print " 班级名"
Printer.CurrentX = 11: Printer.CurrentY = 21
Printer.Print "节   号"
End Sub


Private Sub cmdpbj_Click()
'MsgBox CStr(Printer.FontSize)
If combopbj.Index = -1 Then MsgBox "请先指定要打印的班级!": Exit Sub

sname = "初一 8  班"
sheadbj = "班  级  课  程  表"
'sheadjs = "教  师  课  程  表"
Printer.DrawWidth = 6

'Printer.Line (4600, 4600)-(6000, 4600)
x0 = 3025
y0 = 5000
For i = 1 To 9
Printer.Line (3025, y0)-(9775, y0)
y0 = y0 + 675
Next i
x0 = 3025 + 1125
For i = 1 To 6
Printer.Line (x0, 5000)-(x0, 10400)
x0 = x0 + 1125
Next i
Printer.Line (3025, 5675)-(3025, 10400)
Printer.Line (2000, 5000)-(2000, 10400) 'first |
Printer.Line (2000, 5000)-(3025, 5000)
Printer.Line (2000, 5675)-(3025, 5675)
Printer.Line (2000, 8375)-(3025, 8375)
Printer.Line (2000, 10400)-(3025, 10400)
Printer.CurrentX = 2400
Printer.CurrentY = 6300
Printer.Print "上"
Printer.CurrentY = 7400: Printer.CurrentX = 2400
Printer.Print "午"
Printer.CurrentY = 8975: Printer.CurrentX = 2400
Printer.Print "下"
Printer.CurrentY = 9650: Printer.CurrentX = 2400
Printer.Print "午"
Printer.CurrentY = 5200
Printer.CurrentX = 2300
Printer.FontSize = 12
Printer.Print sname
x0 = 4300

Dim xh(5) As String
xh(1) = "星期一": xh(2) = "星期二": xh(3) = "星期三": xh(4) = "星期四": xh(5) = "星期五"
Printer.CurrentX = x0: Printer.CurrentY = 5200
For i = 1 To 5
Printer.CurrentX = x0: Printer.CurrentY = 5200
Printer.Print xh(i)
x0 = x0 + 1125
Next i

Printer.CurrentX = 5500
Printer.CurrentY = 4500
Printer.FontSize = 16
Printer.Print sheadbj

x0 = 3480
y0 = 5950
For i = 1 To 7
Printer.CurrentX = x0
Printer.CurrentY = y0
Printer.Print i
y0 = y0 + 675
Next i

Printer.EndDoc

End Sub



Sub pbzm()
ReDim bjexp(bjs)
Open App.Path + "\bj.ran" For Random As #1 Len = 18
For i = 1 To bjs
Get #1, i, bjexp(i)
Next i
Close #1
bzmy1 = 26
For i = 1 To bjs
If i = 1 Or i = 21 Or i = 41 Then
Call drawbzmbiao
bzmy1 = 26
End If
Printer.CurrentX = 21: Printer.CurrentY = bzmy1
Printer.Print Mid$(bjexp(i).bjnjm, 1, 3) + Mid$(bjexp(i).bjbjm, 1, 2)
Printer.CurrentX = 51: Printer.CurrentY = bzmy1
Printer.Print Mid$(bjexp(i).bjbzrm, 1, 4)
'MsgBox CStr(bzmy1) + "first":
bzmy1 = bzmy1 + 10 ': MsgBox CStr(bzmy1)
If i = 20 Or i = 40 Then Printer.NewPage
Next i
Printer.EndDoc
End Sub



Sub pkcjsm()
'Printer.widthed = 100: Printer.heighted = 200
'Dim pkc As kctype
Dim jend As Integer
Dim zks As Integer
Open App.Path + "\zkcshu.bin" For Binary As #1
Get #1, 1, zks
Close #1
ReDim kcexp(zks)
'MsgBox CStr(zks)
ReDim kcm(zks)

Open App.Path + "\kc.ran" For Random As #2 Len = 18
Dim strtemp As String
jend = 1
For i = 1 To zks
Get #2, i, kcexp(i)
'Text1.Text = kcexp(i).kckcm:
'MsgBox kcexp(i).kckcm
For j = 1 To jend
If kcm(j) = kcexp(i).kckcm Then GoTo ext1
Next j
'jend = jend + 1

kcm(jend) = kcexp(i).kckcm
jend = 1 + jend
ext1:
Next i

⌨️ 快捷键说明

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