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

📄 frmjsoption.frm

📁 VB编写的中小学监考老师排表软件
💻 FRM
📖 第 1 页 / 共 3 页
字号:
         _ExtentY        =   847
         _Version        =   393216
      End
      Begin VB.Label Label3 
         Caption         =   " 请选择:"
         BeginProperty Font 
            Name            =   "MS Sans Serif"
            Size            =   12
            Charset         =   0
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   375
         Left            =   120
         TabIndex        =   18
         Top             =   600
         Width           =   6255
      End
      Begin VB.Label Label2 
         Caption         =   "请选字体:"
         BeginProperty Font 
            Name            =   "MS Sans Serif"
            Size            =   12
            Charset         =   0
            Weight          =   400
            Underline       =   0   'False
            Italic          =   0   'False
            Strikethrough   =   0   'False
         EndProperty
         Height          =   375
         Left            =   -74640
         TabIndex        =   14
         Top             =   960
         Width           =   1695
      End
   End
End
Attribute VB_Name = "frmjsoption"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False

Option Explicit
Dim workb As workbiao


Sub printb(ByVal x0 As Single, ByVal y0 As Single, ByVal Wb As Single, ByVal Hb As Single)
Dim i, j As Integer
Dim x1, y1 As Single
'print 表格
Printer.ForeColor = Gbgcolor
For i = 1 To 9
If i = 1 Or i = 2 Or i = 6 Or i = 9 Then
  If i = 1 Or i = 9 Then
  Printer.DrawWidth = 5
  Else
  Printer.DrawWidth = 3
  End If
x1 = x0
Else
Printer.DrawWidth = 1
x1 = x0 + Wb / 12
End If

Printer.Line (x1, y0 + 2 * Hb / 11 + (i - 1) * Hb / 11)-(x0 + Wb, y0 + 2 * Hb / 11 + (i - 1) * Hb / 11)
Next i
'redraw first line
Printer.DrawWidth = 5
Printer.Line (x0, y0 + 2 * Hb / 11)-(x0 + Wb, y0 + 2 * Hb / 11)

For i = 1 To 7
If i = 1 Or i = 7 Then
Printer.DrawWidth = 5
Else
Printer.DrawWidth = 1
End If
Printer.Line (x0 + (i - 1) * Wb / 6, y0 + 2 * Hb / 11)-(x0 + (i - 1) * Wb / 6, y0 + 10 * Hb / 11)
Next i
Printer.DrawWidth = 1
Printer.Line (x0 + Wb / 12, y0 + 2 * Hb / 11)-(x0 + Wb / 12, y0 + 10 * Hb / 11)

'print 标题
'Do While Printer.TextWidth(Gstrbt) > Wb
'Gstrbt = Mid$(Gstrbt, 1, Len(Gstrbt) - 1)
'Loop
Printer.FontSize = Gsizebt
Printer.ForeColor = Gbtcolor
Printer.CurrentX = x0 + (Wb - Printer.TextWidth(Gstrbt)) / 2
Printer.CurrentY = y0 + Hb / 22
Printer.Print Gstrbt
'print 正文
Printer.ForeColor = Gzwcolor
Printer.FontSize = Gsizebt - 9
y1 = y0 + 3 * Hb / 11 + (Hb / 11 - Printer.TextHeight("语文")) / 2
For i = 0 To Class - 1
Printer.CurrentY = y1
x1 = x0 + Wb / 6 + (Wb / 6 - Printer.TextWidth("初一11.语文")) / 2
For j = 0 To Day - 1
Printer.CurrentY = y1
Printer.CurrentX = x1
Printer.Print Trim$(workb.biao(i, j))
x1 = x1 + Wb / 6
Next j
y1 = y1 + Hb / 11
Next i

'print 题头
Printer.ForeColor = Gttcolor
Printer.FontSize = Gsize
Printer.CurrentY = y0 + 2 * Hb / 11 - Printer.TextHeight(workb.name) - Hb / 44
Printer.CurrentX = x0
Printer.Print workb.name
Printer.CurrentY = y0 + 2 * Hb / 11 - Printer.TextHeight(Gstrsj) - Hb / 44
Printer.CurrentX = x0 + Wb - Printer.TextWidth(Gstrsj)
If Chkhavesj Then
Printer.Print Gstrsj
End If
Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("时间")) / 2
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.Print "时间"
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.CurrentX = x0 + Wb / 12 + (Wb / 12 - Printer.TextWidth("节次")) / 2
Printer.Print "节次"
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
x1 = x0 + Wb / 6 + (Wb / 6 - Printer.TextWidth("星期一")) / 2
Printer.CurrentX = x1
Printer.Print "星期一"
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
x1 = x1 + Wb / 6
Printer.CurrentX = x1
Printer.Print "星期二"
x1 = x1 + Wb / 6
Printer.CurrentX = x1
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.Print "星期三"
x1 = x1 + Wb / 6
Printer.CurrentX = x1
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.Print "星期四"
x1 = x1 + Wb / 6
Printer.CurrentX = x1
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.Print "星期五"
Printer.CurrentX = x0 + Wb / 12 + (Wb / 12 - Printer.TextWidth("1")) / 2
y1 = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("1")) / 2
For i = 1 To 7
Printer.CurrentX = x0 + Wb / 12 + (Wb / 12 - Printer.TextWidth("11")) / 2
y1 = y1 + Hb / 11
Printer.CurrentY = y1
Printer.Print Str$(i)
Next i


Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("上")) / 2
Printer.CurrentY = y0 + 4 * Hb / 11 + Hb / 22
Printer.Print "上"
Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("上")) / 2
Printer.CurrentY = y0 + 5 * Hb / 11 + Hb / 22
Printer.Print "午"
Printer.CurrentY = y0 + 7 * Hb / 11 + 3 * Hb / 44
Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("上")) / 2
Printer.Print "下"
Printer.CurrentY = y0 + 8 * Hb / 11 + 3 * Hb / 44
Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("上")) / 2
Printer.Print "午"

'print 备注
'Printer.ForeColor = Gttcolor
Printer.CurrentX = x0 + Wb / 8
Printer.CurrentY = y0 + 10 * Hb / 11 + Hb / 44
Printer.FontSize = Gsize - 2
Printer.Print Gstrbz
End Sub

Sub printb1(ByVal x0 As Single, ByVal y0 As Single, ByVal Wb As Single, ByVal Hb As Single)
Dim i, j As Integer
Dim x1, y1 As Single
'print 表格
Printer.ForeColor = Gbgcolor
For i = 1 To 9
If i = 1 Or i = 2 Or i = 6 Or i = 9 Then
  If i = 1 Or i = 9 Then
  Printer.DrawWidth = 5
  Else
  Printer.DrawWidth = 3
  End If
x1 = x0
Else
Printer.DrawWidth = 1
x1 = x0 + Wb / 12
End If

Printer.Line (x1, y0 + 2 * Hb / 11 + (i - 1) * Hb / 11)-(x0 + Wb, y0 + 2 * Hb / 11 + (i - 1) * Hb / 11)
Next i
'redraw first line
Printer.DrawWidth = 5
Printer.Line (x0, y0 + 2 * Hb / 11)-(x0 + Wb, y0 + 2 * Hb / 11)

For i = 1 To 7
If i = 1 Or i = 7 Then
Printer.DrawWidth = 5
Else
Printer.DrawWidth = 1
End If
Printer.Line (x0 + (i - 1) * Wb / 6, y0 + 2 * Hb / 11)-(x0 + (i - 1) * Wb / 6, y0 + 10 * Hb / 11)
Next i
Printer.DrawWidth = 1
Printer.Line (x0 + Wb / 12, y0 + 2 * Hb / 11)-(x0 + Wb / 12, y0 + 10 * Hb / 11)

'print 标题
'Do While Printer.TextWidth(Gstrbt) > Wb
'Gstrbt = Mid$(Gstrbt, 1, Len(Gstrbt) - 1)
'Loop
Printer.FontSize = Gsizebt
Printer.ForeColor = Gbtcolor
Printer.CurrentX = x0 + (Wb - Printer.TextWidth(Gstrbt)) / 2
Printer.CurrentY = y0 + Hb / 22
Printer.Print Gstrbt
'print 正文
Printer.ForeColor = Gzwcolor
Printer.FontSize = Gsizebt - 9
y1 = y0 + 3 * Hb / 11 + (Hb / 11 - 2 * Printer.TextHeight("语文")) / 2
For i = 0 To Class - 1
Printer.CurrentY = y1
x1 = x0 + Wb / 6 + (Wb / 6 - Printer.TextWidth("初一11.语文")) / 2
For j = 0 To Day - 1
Printer.CurrentY = y1
Printer.CurrentX = x1
Printer.Print Trim$(workb.biao(i, j))
x1 = x1 + Wb / 6
Next j
y1 = y1 + Hb / 11
Next i

'print 题头
Printer.ForeColor = Gttcolor
Printer.FontSize = Gsize
'Printer.CurrentY = y0 + 2 * Hb / 11 - Printer.TextHeight(workb.name) - Hb / 44
'Printer.CurrentX = x0
'Printer.Print workb.name
Printer.CurrentY = y0 + 2 * Hb / 11 - Printer.TextHeight(Gstrsj) - Hb / 44
Printer.CurrentX = x0 + Wb - Printer.TextWidth(Gstrsj)
If Chkhavesj Then
Printer.Print Gstrsj
End If
Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("时间")) / 2
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.Print "时间"
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.CurrentX = x0 + Wb / 12 + (Wb / 12 - Printer.TextWidth("节次")) / 2
Printer.Print "节次"
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
x1 = x0 + Wb / 6 + (Wb / 6 - Printer.TextWidth("星期一")) / 2
Printer.CurrentX = x1
Printer.Print "星期一"
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
x1 = x1 + Wb / 6
Printer.CurrentX = x1
Printer.Print "星期二"
x1 = x1 + Wb / 6
Printer.CurrentX = x1
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.Print "星期三"
x1 = x1 + Wb / 6
Printer.CurrentX = x1
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.Print "星期四"
x1 = x1 + Wb / 6
Printer.CurrentX = x1
Printer.CurrentY = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("时间")) / 2
Printer.Print "星期五"
Printer.CurrentX = x0 + Wb / 12 + (Wb / 12 - Printer.TextWidth("1")) / 2
y1 = y0 + 2 * Hb / 11 + (Hb / 11 - Printer.TextHeight("1")) / 2
For i = 1 To 7
Printer.CurrentX = x0 + Wb / 12 + (Wb / 12 - Printer.TextWidth("11")) / 2
y1 = y1 + Hb / 11
Printer.CurrentY = y1
Printer.Print Str$(i)
Next i


Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("上")) / 2
Printer.CurrentY = y0 + 4 * Hb / 11 + Hb / 22
Printer.Print "上"
Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("上")) / 2
Printer.CurrentY = y0 + 5 * Hb / 11 + Hb / 22
Printer.Print "午"
Printer.CurrentY = y0 + 7 * Hb / 11 + 3 * Hb / 44
Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("上")) / 2
Printer.Print "下"
Printer.CurrentY = y0 + 8 * Hb / 11 + 3 * Hb / 44
Printer.CurrentX = x0 + (Wb / 12 - Printer.TextWidth("上")) / 2
Printer.Print "午"

'print 备注
'Printer.ForeColor = Gttcolor
Printer.CurrentX = x0 + Wb / 8
Printer.CurrentY = y0 + 10 * Hb / 11 + Hb / 44
Printer.FontSize = Gsize - 2
Printer.Print Gstrbz
End Sub

Sub printb2(ByVal x0 As Single, ByVal y0 As Single, ByVal Wb As Single, ByVal Hb As Single)
Dim i, j As Integer
Dim x1, y1 As Single

'print 题头
Printer.ForeColor = Gttcolor
Printer.FontSize = Gsize
Printer.CurrentY = y0 + 2 * Hb / 11 - Printer.TextHeight(workb.name) - Hb / 44
Printer.CurrentX = x0
Printer.Print workb.name

'print 正文
Printer.ForeColor = Gzwcolor
Printer.FontSize = Gsizebt - 9
y1 = y0 + 3 * Hb / 11 + (Hb / 11 - 2 * Printer.TextHeight("语文")) / 2 + Printer.TextHeight("语文")
For i = 0 To Class - 1
Printer.CurrentY = y1
x1 = x0 + Wb / 6 + (Wb / 6 - Printer.TextWidth("初一11.语文")) / 2
For j = 0 To Day - 1
Printer.CurrentY = y1
Printer.CurrentX = x1
Printer.Print Trim$(workb.biao(i, j))
x1 = x1 + Wb / 6
Next j
y1 = y1 + Hb / 11
Next i

End Sub


Private Sub chkhavebt_Click()

If Chkhavebt.Value = 0 Then
Texbt.Enabled = False
Else
Texbt.Enabled = True
'Texbt.SetFocus
End If

End Sub

Private Sub chkhavebz_Click()
If Chkhavebz.Value = 0 Then
Texbz.Enabled = False
Else
Texbz.Enabled = True
'Texbz.SetFocus
End If
End Sub



Private Sub Chkkcm_Click()

End Sub


Private Sub Cmdbgcolor_Click()
dlgcolor.ShowColor
Gbgcolor = dlgcolor.Color
Texbg.ForeColor = Gbgcolor
End Sub

Private Sub Cmdbtcolor_Click()
'cdgcolor.ShowColor
'Lbltb.ForeColor = CommonDialog1.Color
'picbtcolor.BackColor = cdgcolor.Color
dlgcolor.ShowColor
Gbtcolor = dlgcolor.Color
Text1.ForeColor = Gbtcolor
Text1.Text = "标题颜色"
End Sub

'as integer

Private Sub cmdjsback_Click()
Unload frmjsoption

End Sub


Private Sub Cmdjsok_Click()
If Class > 7 Or Day > 5 Or Class1 > 4 Then
MsgBox "你的工作日数或上课节数太大,在本模块不能打印,请返回主屏执行“导出”操作,导出Execl表后再打印!"
Exit Sub
End If
'---------ini print
 Gbtcolor = Text1.ForeColor
 Gttcolor = Text2.ForeColor
 Gzwcolor = Text3.ForeColor
 Gbgcolor = Texbg.ForeColor

If Chkhavebz.Value = 1 Then
Gstrbz = Trim$(Texbz.Text)
Else
Gstrbz = ""
End If

If Chkhavesj.Value = 1 Then
Gstrsj = Str$(Now())
Else
Gstrsj = ""
End If

If Chkhavebt.Value = 1 Then
Gstrbt = Trim$(Texbt.Text)
'Gstrbt = Gstrjsbt
'MsgBox Gstrbt
Else
Gstrbt = ""
End If
'-------ini print

If frmprint.Lstpjs.ListIndex = -1 Then MsgBox "请先指定要打印的教师!": Exit Sub

  Dim biaonum, i, j, b As Integer
  Dim xx, yy, ww, hh As Single
  Dim firstpage As Boolean
  firstpage = True
Printer.ScaleMode = 6
'Gbtcolor = Gjsbtcolor
'Gttcolor = Gjsttcolor
'Gzwcolor = Gjszwcolor
'Gstrbt = Gstrjsbt
'Gstrbz = Gstrjsbz
Printer.FontName = Gjszt
Select Case Trim$(Gstrbshu)
  Case "js2b"
If Ghebin = False Then
  Printer.Orientation = 1
  Gsizebt = 22
  Gsize = 12
ww = Printer.ScaleWidth * 90 / 100
hh = Printer.ScaleHeight * 45 / 100
firstpage = True
biaonum = 0

For b = 0 To frmprint.Lstpjs.ListCount - 1

If frmprint.Lstpjs.Selected(b) = True Then

biaonum = biaonum + 1
If Not firstpage And (biaonum Mod 2) = 1 Then
Printer.NewPage
End If

Select Case (biaonum Mod 2)
Case Is = 1
'firstpage = True
xx = (Printer.ScaleWidth - ww) / 2
yy = (Printer.ScaleHeight - 2 * hh) / 4
Case Is = 0
'firstpage = False
xx = (Printer.ScaleWidth - ww) / 2
yy = (Printer.ScaleHeight - 2 * hh) * 3 / 4 + hh

End Select

workb.name = Left$(jskbs(b + 1).js, 8) + "老师"
For i = 0 To Class - 1
For j = 0 To Day - 1
workb.biao(i, j) = Left$(jskbs(b + 1).rkbiao(i, j), 2) + Mid$(jskbs(b + 1).rkbiao(i, j), 7, 5) '+Left$(jskbs(b + 1).rkbiao(i, j), 2)+Left$(jskbs(b + 1).rkbiao(i, j), 2)
'workb.biao(i, j) = Left$(jskbs(b + 1).rkbiao(i, j), 2)
If Trim$(workb.biao(i, j)) = "0" Then workb.biao(i, j) = " "
Next j
Next i
Call printb(xx, yy, ww, hh)

firstpage = False

End If
Next b

Printer.EndDoc
Else '两教师合并打印的情况
 Dim hebinname As String
 Printer.Orientation = 1
  Gsizebt = 22
  Gsize = 12
ww = Printer.ScaleWidth * 90 / 100
hh = Printer.ScaleHeight * 45 / 100
firstpage = True
biaonum = 0
xx = (Printer.ScaleWidth - ww) / 2
yy = (Printer.ScaleHeight - 2 * hh) / 4
For b = 0 To frmprint.Lstpjs.ListCount - 1

If frmprint.Lstpjs.Selected(b) = True Then
If firstpage = True Then
workb.name = Left$(jskbs(b + 1).js, 4) + "+"
For i = 0 To Class - 1
For j = 0 To Day - 1
workb.biao(i, j) = Left$(jskbs(b + 1).rkbiao(i, j), 2) + Mid$(jskbs(b + 1).rkbiao(i, j), 7, 5) '+Left$(jskbs(b + 1).rkbiao(i, j), 2)+Left$(jskbs(b + 1).rkbiao(i, j), 2)
'workb.biao(i, j) = Left$(jskbs(b + 1).rkbiao(i, j), 2)
If Trim$(workb.biao(i, j)) = "0" Then workb.biao(i, j) = " "
Next j
Next i
Call printb1(xx, yy, ww, hh)
firstpage = False

⌨️ 快捷键说明

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