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

📄 打印页面设置.frm

📁 新世纪ERP系统管理源代码
💻 FRM
📖 第 1 页 / 共 2 页
字号:
      Caption         =   "表格线输出间隔行数"
      Height          =   345
      Left            =   3090
      TabIndex        =   38
      Top             =   3510
      Width           =   1635
   End
   Begin VB.Label Bjjglabel 
      BackColor       =   &H00FFFFFF&
      BorderStyle     =   1  'Fixed Single
      Height          =   315
      Left            =   4740
      TabIndex        =   36
      Top             =   3000
      Width           =   1155
   End
   Begin VB.Label Label8 
      BackStyle       =   0  'Transparent
      Caption         =   "连续输出表表间间隔"
      Height          =   225
      Left            =   3090
      TabIndex        =   34
      Top             =   3060
      Width           =   1665
   End
   Begin VB.Label BbmcLabel 
      Height          =   255
      Left            =   6330
      TabIndex        =   33
      Top             =   2580
      Visible         =   0   'False
      Width           =   795
   End
End
Attribute VB_Name = "DY_Dyymsz"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'*******************************************************
'*    模 块 名 称 :打印页面设置
'*    功 能 描 述 :可以设置报表打印属性,并可保存设置
'*
'*                 参数:系统打印报表编码
'*
'*    程序员姓名  :张建忠
'*    最后修改人  :张建忠
'*    最后修改时间:2001/06/21
'*    备        注:封版
'*******************************************************
Dim Dybbcsrec As New ADODB.Recordset
Dim changelock As Boolean
Dim Hfbbbtfont$, Hfbbbtsize$, Hfbbsjqfont$, Hfbbsjqsize$
Dim Hfzdmybbhs%, Hfsfzdbbhs%, Hfzdxwz%
Dim Hfsfmydy As Boolean, Hfsfdcybj As Boolean, Hfsfsckb As Boolean, Hfzdbbhs As Boolean
Dim Hfsflxdy As Boolean, Hfsftdfssc As Boolean
Dim Hfbjjg As Integer, Hfbxjg As Integer
Dim BcMarginleft As Double, BcMarginright As Double, BcMargintop As Double, BcMarginbottom As Double
Dim Tsxx As String
Dim XtReportCodete As String
Private Sub BbhsText_KeyPress(KeyAscii As Integer)
    If Not ((Chr(KeyAscii) >= "0" And Chr(KeyAscii) <= "9") Or KeyAscii = vbKeyBack) Then
        KeyAscii = 0
    End If
End Sub

Private Sub Bbztcommand_Click()     '设 置 标 题 字 体
    With YmszDialog
        .Flags = cdlCFBoth
        .FontName = SjztLabel
        .FontSize = Sjzhlabel
        .ShowFont
        SjztLabel = .FontName
        Sjzhlabel = .FontSize
    End With
End Sub

Private Sub BcCommand_Click()      '保 存 用 户 打 印 设 置
    If Dybbcsrec.State = 1 Then Dybbcsrec.Close
    
    On Error GoTo Swcwcl
    Cw_DataEnvi.DataConnect.BeginTrans
    Dybbcsrec.Open "select * from xt_dybbcs where bbbm='" + XtReportCodete + "'", Cw_DataEnvi.DataConnect, adOpenDynamic, adLockOptimistic
    With Dybbcsrec
        If Not (.EOF And .BOF) Then
            
            '标题及数据区字体
            .Fields("bbbtfont") = Trim(Btztlabel)
            .Fields("bbbtsize") = Trim(Btzhlabel)
            .Fields("bbsjqfont") = Trim(SjztLabel)
            .Fields("bbsjqsize") = Trim(Sjzhlabel)
            
            '指定每页报表数据行数
            .Fields("zdmybbhs") = BbhsVScroll.Value
            
            '装订线位置
            For Jsqte = 0 To 2
                If Zdoption(Jsqte).Value Then
                    .Fields("zdxwz") = Jsqte
                End If
            Next Jsqte
            
            '输出方式
            .Fields("sfmydy") = MydyCheck.Value
            
            .Fields("sfdcybj") = BjdcCheck.Value
            
            .Fields("sfsckb") = KbscCheck.Value
            
            .Fields("sfzdbbhs") = ZdhsCheck.Value
            
            .Fields("sfgdsc") = GdscCheck.Value
            
            .Fields("sflxdy") = LxscCheck.Value
            
            .Fields("sftdfssc") = TdfsCheck.Value
            
            '连续输出表表间间隔
            .Fields("bjjg") = BjjgVScroll.Value
            
            '报表数据区表格线打印间隔行数
            .Fields("bbbxjg") = BxjgVScroll.Value
            
            '打印机设置
            
            .Fields("papersize") = YmszPrinter.PaperSize
            If YmszPrinter.PaperSize = 256 Then
                .Fields("PaperWidth") = YmszPrinter.PaperWidth
                .Fields("PaperHeight") = YmszPrinter.PaperHeight
            End If
            .Fields("paperscfx") = YmszPrinter.Orientation
            .Fields("bbzbj") = BcMarginleft
            .Fields("bbybj") = BcMarginright
            .Fields("bbsbj") = BcMargintop
            .Fields("bbxbj") = BcMarginbottom
            
            .Update
        End If
    End With
    Cw_DataEnvi.DataConnect.CommitTrans
    Tsxx = "打印设置信息保存完毕!"
    Call Xtxxts(Tsxx, 0, 4)
    Exit Sub
Swcwcl:
    Cw_DataEnvi.DataConnect.RollbackTrans
    Tsxx = "存盘过程中出现未知错误,程序自动恢复保存前状态!"
    Call Xtxxts(Tsxx, 0, 4)
    Exit Sub
End Sub

Private Sub BjjgVScroll_Change()   '设置表间间隔
    Bjjglabel = BjjgVScroll.Value
End Sub

Private Sub BtztCommand_Click()    '设置报表数据区字体
    With YmszDialog
        .Flags = cdlCFBoth
        .FontName = Btztlabel
        .FontSize = Btzhlabel
        .ShowFont
        Btztlabel = .FontName
        Btzhlabel = .FontSize
    End With
End Sub

Private Sub BxjgVScroll_Change()
    BxjgLabel = BxjgVScroll.Value
End Sub

Private Sub Form_Activate()        '保存现有设置值以便恢复
    
    '标题及数据区字体
    Hfbbbtfont = Btztlabel
    Hfbbbtsize = Btzhlabel
    Hfbbsjqfont = SjztLabel
    Hfbbsjqsize = Sjzhlabel
    
    '指定每页报表数据行数
    Hfzdmybbhs = BbhsVScroll.Value
    Hfsfzdbbhs = ZdhsCheck.Value
    
    '装订线位置
    For Jsqte = 0 To 2
        If Zdoption(Jsqte).Value Then
            Hfzdxwz = Jsqte
        End If
    Next Jsqte
    
    '输出方式
    If MydyCheck.Value = 1 Then
        Hfsfmydy = True
    Else
        Hfsfmydy = False
    End If
    If BjdcCheck.Value = 1 Then
        Hfsfdcybj = True
    Else
        Hfsfdcybj = False
    End If
    If KbscCheck.Value = 1 Then
        Hfsfsckb = True
    Else
        Hfsfsckb = False
    End If
    If ZdhsCheck.Value = 1 Then
        Hfzdbbhs = True
    Else
        Hfzdbbhs = False
    End If
    If LxscCheck.Value = 1 Then
        Hfsflxdy = True
    Else
        Hfsflxdy = False
    End If
    If TdfsCheck.Value = 1 Then
        Hfsftdfssc = True
    Else
        Hfsftdfssc = False
    End If
    
    '表间间隔
    Hfbjjg = BjjgVScroll.Value
    
    '表线间隔
    Hfbxjg = BxjgLabel
    
    '报表左、右、上、下边界
    BcMarginleft = YmszPrinter.MarginLeft
    BcMarginright = YmszPrinter.MarginRight
    BcMargintop = YmszPrinter.MarginTop
    BcMarginbottom = YmszPrinter.MarginBottom
    
End Sub

Private Sub Form_Load()
    
    '读入系统打印报表编码
    XtReportCodete = XtReportCode
    Call Cshz
    
End Sub

Private Sub Cshz()
    Set Dybbcsrec = Cw_DataEnvi.DataConnect.Execute("select * from xt_dybbcs where bbbm='" + XtReportCode + "'")
    With Dybbcsrec
        If Not (.EOF And .BOF) Then
            
            '报表名称
            BbmcLabel = Trim(.Fields("bbmc"))
            
            '报表固定输出终止列
            
            BbsclText.Text = .Fields("gdsczzl")
            
            '标题及数据区字体
            Btztlabel = Trim(.Fields("bbbtfont"))
            Btzhlabel = Trim(.Fields("bbbtsize"))
            SjztLabel = Trim(.Fields("bbsjqfont"))
            Sjzhlabel = Trim(.Fields("bbsjqsize"))
            
            '指定每页报表数据行数
            changelock = True
            BbhsVScroll.Max = 1
            BbhsVScroll.Min = 32000
            changelock = False
            BbhsVScroll.Value = .Fields("zdmybbhs")
            
            '装订线位置
            Zdoption(.Fields("zdxwz")).Value = True
            
            '输出方式
            If .Fields("sfmydy") Then
                MydyCheck.Value = 1
            Else
                MydyCheck.Value = 0
            End If
            If .Fields("sfdcybj") Then
                BjdcCheck.Value = 1
            Else
                BjdcCheck.Value = 0
            End If
            If .Fields("sfsckb") Then
                KbscCheck.Value = 1
            Else
                KbscCheck.Value = 0
            End If
            If .Fields("sfzdbbhs") Then
                ZdhsCheck.Value = 1
            Else
                ZdhsCheck.Value = 0
            End If
            If .Fields("sfgdsc") Then
                GdscCheck.Value = 1
            Else
                GdscCheck.Value = 0
            End If
            If .Fields("sflxdy") Then
                LxscCheck.Value = 1
            Else
                LxscCheck.Value = 0
            End If
            If .Fields("sftdfssc") Then
                TdfsCheck.Value = 1
            Else
                TdfsCheck.Value = 0
            End If
            
            '连续输出表表间间隔
            BjjgVScroll.Max = 1
            BjjgVScroll.Min = 50
            BjjgVScroll.Value = .Fields("bjjg")
            
            '报表数据区表格线打印间隔行数
            BxjgVScroll.Value = .Fields("bbbxjg")
            
            '打印机设置
            YmszPrinter.PaperSize = .Fields("papersize")
            If .Fields("papersize") = 256 And .Fields("PaperWidth") <> 0 And .Fields("PaperHeight") <> 0 Then
                YmszPrinter.PaperWidth = .Fields("PaperWidth")
                YmszPrinter.PaperHeight = .Fields("PaperHeight")
            End If
            YmszPrinter.Orientation = .Fields("paperscfx")
            YmszPrinter.MarginLeft = .Fields("bbzbj")
            YmszPrinter.MarginRight = .Fields("bbybj")
            YmszPrinter.MarginTop = .Fields("bbsbj")
            YmszPrinter.MarginBottom = .Fields("bbxbj")
        End If
    End With
End Sub

Private Sub BbhsVScroll_Change()          '指定行数滚动条改变
    If changelock Then
        Exit Sub
    End If
    changelock = True
    BbhsText.Text = Trim(Str(BbhsVScroll.Value))
    changelock = False
End Sub

Private Sub BbhsText_change()             '指定行数文本框改变
    If changelock Then
        Exit Sub
    End If
    If Val(BbhsText) <= BbhsVScroll.Min And Val(BbhsText) >= BbhsVScroll.Max Then
        changelock = True
        BbhsVScroll.Value = Val(BbhsText)
        changelock = False
    Else
        changelock = True
        BbhsVScroll.Value = 1
        BbhsText.Text = 1
        changelock = False
    End If
End Sub

Private Sub JbszCommand_Click()           '基 本 设 置
    If YmszPrinter.NDevices <= 0 Then
        Tsxx = "本机未安装任何打印机!"
        Call Xtxxts(Tsxx, 0, 1)
        Exit Sub
    End If
    
    YmszPrinter.MarginLeft = BcMarginleft
    YmszPrinter.MarginRight = BcMarginright
    YmszPrinter.MarginTop = BcMargintop
    YmszPrinter.MarginBottom = BcMarginbottom
    
    With YmszPrinter
        .PrintDialog (pdPageSetup)
    End With
    
    BcMarginleft = YmszPrinter.MarginLeft
    BcMarginright = YmszPrinter.MarginRight
    BcMargintop = YmszPrinter.MarginTop
    BcMarginbottom = YmszPrinter.MarginBottom
    
End Sub

Private Sub QdCommand_Click()             '确 定
    Me.Hide
End Sub

Private Sub QxCommand_Click()             '取 消
    '标题及数据区字体
    Btztlabel = Hfbbbtfont
    Btzhlabel = Hfbbbtsize
    SjztLabel = Hfbbsjqfont
    Sjzhlabel = Hfbbsjqsize
    
    '指定每页报表数据行数
    BbhsVScroll.Value = Hfzdmybbhs
    ZdhsCheck.Value = Hfsfzdbbhs
    
    '装订线位置
    Zdoption(Hfzdxwz).Value = True
    
    '输出方式
    If Hfsfmydy Then
        MydyCheck.Value = 1
    Else
        MydyCheck.Value = 0
    End If
    If Hfsfdcybj Then
        BjdcCheck.Value = 1
    Else
        BjdcCheck.Value = 0
    End If
    If Hfsfsckb Then
        KbscCheck.Value = 1
    Else
        KbscCheck.Value = 0
    End If
    If Hfzdbbhs Then
        ZdhsCheck.Value = 1
    Else
        ZdhsCheck.Value = 0
    End If
    If Hfsflxdy Then
        LxscCheck.Value = 1
    Else
        LxscCheck.Value = 0
    End If
    If Hfsftdfssc Then
        TdfsCheck.Value = 1
    Else
        TdfsCheck.Value = 0
    End If
    
    BjjgVScroll.Value = Hfbjjg
    BxjgVScroll.Value = Hfbxjg
    
    Me.Hide
End Sub

⌨️ 快捷键说明

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