📄 frmjsoption.frm
字号:
_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 + -