www.pudn.com > bmp2toJPEG.rar > DlgOption.frm


VERSION 5.00 
Begin VB.Form DlgOption  
   BorderStyle     =   3  'Fixed Dialog 
   Caption         =   "JPEG选项" 
   ClientHeight    =   3825 
   ClientLeft      =   2760 
   ClientTop       =   3750 
   ClientWidth     =   4110 
   HasDC           =   0   'False 
   Icon            =   "DlgOption.frx":0000 
   LinkTopic       =   "Form1" 
   LockControls    =   -1  'True 
   MaxButton       =   0   'False 
   MinButton       =   0   'False 
   ScaleHeight     =   255 
   ScaleMode       =   3  'Pixel 
   ScaleWidth      =   274 
   ShowInTaskbar   =   0   'False 
   Begin VB.Frame FrmQuality  
      Caption         =   "质量(&Q)" 
      Height          =   840 
      Left            =   240 
      TabIndex        =   0 
      Top             =   240 
      Width           =   3600 
      Begin VB.TextBox TxtQuality  
         Height          =   270 
         Left            =   840 
         MaxLength       =   4 
         TabIndex        =   1 
         Text            =   "Text1" 
         Top             =   0 
         Width           =   600 
      End 
      Begin VB.HScrollBar HSolQuality  
         Height          =   300 
         LargeChange     =   10 
         Left            =   120 
         Max             =   100 
         TabIndex        =   2 
         Top             =   360 
         Width           =   3300 
      End 
   End 
   Begin VB.CheckBox ChkAutoDHT  
      Caption         =   "最优化H&uffman表" 
      Enabled         =   0   'False 
      Height          =   300 
      Left            =   240 
      TabIndex        =   10 
      Top             =   2790 
      Width           =   2250 
   End 
   Begin VB.Frame FrmColor  
      Height          =   1440 
      Left            =   240 
      TabIndex        =   3 
      Top             =   1200 
      Width           =   1560 
      Begin VB.OptionButton OptGray  
         Caption         =   "灰度(&G)" 
         Height          =   240 
         Index           =   1 
         Left            =   240 
         TabIndex        =   5 
         Top             =   840 
         Width           =   1200 
      End 
      Begin VB.OptionButton OptGray  
         Caption         =   "彩色(&C)" 
         Height          =   240 
         Index           =   0 
         Left            =   240 
         TabIndex        =   4 
         Top             =   360 
         Width           =   1200 
      End 
   End 
   Begin VB.Frame FrmMCU  
      Caption         =   "颜色分量采样" 
      Height          =   1440 
      Left            =   1920 
      TabIndex        =   6 
      Top             =   1200 
      Width           =   1920 
      Begin VB.CheckBox ChkVy2  
         Caption         =   "2:1 垂直(&V)" 
         Height          =   360 
         Left            =   240 
         TabIndex        =   9 
         Top             =   960 
         Width           =   1500 
      End 
      Begin VB.CheckBox ChkHy2  
         Caption         =   "2:1 水平(&H)" 
         Height          =   360 
         Left            =   240 
         TabIndex        =   8 
         Top             =   600 
         Width           =   1500 
      End 
      Begin VB.Label LblMCU  
         Caption         =   "Label1" 
         Height          =   240 
         Left            =   600 
         TabIndex        =   7 
         Top             =   300 
         Width           =   900 
      End 
   End 
   Begin VB.CommandButton CmdReset  
      Caption         =   "恢复(&R)" 
      Height          =   360 
      Left            =   2880 
      TabIndex        =   13 
      Top             =   3240 
      Width           =   1080 
   End 
   Begin VB.CommandButton CmdCancel  
      Cancel          =   -1  'True 
      Caption         =   "取消(&C)" 
      Height          =   360 
      Left            =   1560 
      TabIndex        =   12 
      Top             =   3240 
      Width           =   1080 
   End 
   Begin VB.CommandButton CmdOK  
      Caption         =   "确定(&O)" 
      Default         =   -1  'True 
      Height          =   360 
      Left            =   240 
      TabIndex        =   11 
      Top             =   3240 
      Width           =   1080 
   End 
End 
Attribute VB_Name = "DlgOption" 
Attribute VB_GlobalNameSpace = False 
Attribute VB_Creatable = False 
Attribute VB_PredeclaredId = True 
Attribute VB_Exposed = False 
Option Explicit 
 
Private JPEGFlags As JPEGInfoConstants 
 
Private Sub pChangeMCU() 
    Dim TempStr As String 
     
    If ChkHy2.Value Then 
        If ChkVy2.Value Then 
            TempStr = "YUV 411" 
        Else 
            TempStr = "YUV 422" 
        End If 
    Else 
        If ChkVy2.Value Then 
            TempStr = "YUV 422" 
        Else 
            TempStr = "YUV 111" 
        End If 
    End If 
     
    LblMCU.Caption = TempStr 
     
End Sub 
 
Private Sub ChkHy2_Click() 
    Call pChangeMCU 
End Sub 
 
Private Sub ChkVy2_Click() 
    Call pChangeMCU 
End Sub 
 
Private Sub CmdCancel_Click() 
    Unload Me 
End Sub 
 
Private Sub CmdOK_Click() 
    JPEGFlags = HSolQuality.Value 
    If ChkHy2.Value Then JPEGFlags = JPEGFlags Or JIC_Hy2 
    If ChkVy2.Value Then JPEGFlags = JPEGFlags Or JIC_Vy2 
    If OptGray(1).Value Then JPEGFlags = JPEGFlags Or JIC_Gray 
    If ChkAutoDHT.Value Then JPEGFlags = JPEGFlags Or JIC_AutoDHT 
    FrmMain.JPEGFlags = JPEGFlags 
    Unload Me 
     
End Sub 
 
Private Sub CmdReset_Click() 
    HSolQuality.Value = JPEGFlags And JIC_QualityMask 
    ChkHy2.Value = ((JPEGFlags And JIC_Hy2) <> 0) And 1 
    ChkVy2.Value = ((JPEGFlags And JIC_Vy2) <> 0) And 1 
    OptGray(((JPEGFlags And JIC_Gray) <> 0) And 1).Value = True 
    ChkAutoDHT.Value = ((JPEGFlags And JIC_AutoDHT) <> 0) And 1 
End Sub 
 
Private Sub Form_Load() 
    JPEGFlags = FrmMain.JPEGFlags 
    Call CmdReset_Click 
     
    '父窗口居中 
    Me.Move FrmMain.Left + (FrmMain.Width - Me.Width) / 2, FrmMain.Top + (FrmMain.Height - Me.Height) / 2 
     
End Sub 
 
Private Sub HSolQuality_Change() 
    Dim TempNum As Long 
    TempNum = Val(TxtQuality.Text) 
    If TempNum <> HSolQuality.Value Then 
        TxtQuality.Text = HSolQuality.Value 
    End If 
End Sub 
 
Private Sub HSolQuality_Scroll() 
    HSolQuality_Change 
End Sub 
 
Private Sub OptGray_Click(Index As Integer) 
    Dim TempBool As Boolean 
    TempBool = (Index = 0) 
    ChkHy2.Enabled = TempBool 
    ChkVy2.Enabled = TempBool 
     
End Sub 
 
Private Sub TxtQuality_Change() 
    On Error Resume Next 
    If IsNumeric(TxtQuality.Text) Then 
        HSolQuality.Value = Val(TxtQuality.Text) 
    End If 
End Sub