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