📄 main.pas
字号:
unit Main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Spin, StdCtrls, ExtCtrls, DBarcode;
type
TFormMain = class(TForm)
Label1: TLabel;
EValue: TEdit;
Label2: TLabel;
SEDensity: TSpinEdit;
RGRotation: TRadioGroup;
RGStyle: TRadioGroup;
Panel1: TPanel;
BSave: TButton;
BFont: TButton;
DuckBarcode: TDuckBarcode;
Image: TImage;
BKColor: TButton;
BBarColor: TButton;
ColorDlg: TColorDialog;
SaveDlg: TSaveDialog;
FontDlg: TFontDialog;
GroupBox1: TGroupBox;
RBLeft: TRadioButton;
RBRight: TRadioButton;
RBCenter: TRadioButton;
Label3: TLabel;
EAddOn: TEdit;
Button1: TButton;
GroupBox2: TGroupBox;
CBShowValue: TCheckBox;
CBCheckCRC: TCheckBox;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure BarcodeChange(Sender: TObject);
procedure EValueChange(Sender: TObject);
procedure SEDensityChange(Sender: TObject);
procedure CBShowValueClick(Sender: TObject);
procedure RGRotationClick(Sender: TObject);
procedure RGStyleClick(Sender: TObject);
procedure BSaveClick(Sender: TObject);
procedure BFontClick(Sender: TObject);
procedure BKColorClick(Sender: TObject);
procedure BBarColorClick(Sender: TObject);
procedure RBLeftClick(Sender: TObject);
procedure EAddOnChange(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure CBCheckCRCClick(Sender: TObject);
private
public
{ Public declarations }
end;
var
FormMain: TFormMain;
implementation
uses PrintFo;
{$R *.DFM}
Procedure TFormMain.FormCreate(Sender: TObject);
Begin
DuckBarcode.Text := EValue.Text;
BarcodeChange(nil);
End;
Procedure TFormMain.FormDestroy(Sender: TObject);
Begin
// asd
End;
Procedure TFormMain.BarcodeChange(Sender: TObject);
Begin
Image.Picture.Graphic := DuckBarcode.GetBitmap;
End;
Procedure TFormMain.EValueChange(Sender: TObject);
Begin
DuckBarcode.Text := EValue.Text;
End;
Procedure TFormMain.EAddOnChange(Sender: TObject);
Begin
DuckBarcode.AddOn := EAddOn.Text;
End;
Procedure TFormMain.SEDensityChange(Sender: TObject);
Begin
if SEDensity.Text = '' Then Exit;
DuckBarcode.Density := SEDensity.Value;
End;
Procedure TFormMain.CBShowValueClick(Sender: TObject);
Begin
if CBShowValue.Checked Then
DuckBarcode.Options := DuckBarcode.Options + [boShowText]
Else
DuckBarcode.Options := DuckBarcode.Options - [boShowText];
End;
Procedure TFormMain.CBCheckCRCClick(Sender: TObject);
Begin
if CBCheckCRC.Checked Then
DuckBarcode.Options := DuckBarcode.Options + [boCheckCRC]
Else
DuckBarcode.Options := DuckBarcode.Options - [boCheckCRC];
End;
Procedure TFormMain.RGRotationClick(Sender: TObject);
Begin
DuckBarcode.Rotation := TBarcodeRotation (RGRotation.ItemIndex);
End;
Procedure TFormMain.RGStyleClick(Sender: TObject);
Begin
DuckBarcode.Style := TBarcodeStyle (RGStyle.ItemIndex);
Case DuckBarcode.Style of
bsUPCA,
bsEAN13:
EAddOn.Enabled := TRUE;
Else
EAddOn.Enabled := FALSE;
End;
End;
Procedure TFormMain.BSaveClick(Sender: TObject);
Begin
if not SaveDlg.Execute Then Exit;
Image.Picture.SaveToFile (SaveDlg.FileName);
End;
Procedure TFormMain.BFontClick(Sender: TObject);
Begin
FontDlg.Font.Assign (DuckBarcode.Font);
if not FontDlg.Execute Then Exit;
DuckBarcode.Font := FontDlg.Font;
End;
Procedure TFormMain.BKColorClick(Sender: TObject);
Begin
ColorDlg.Color := DuckBarcode.ColorBK;
if not ColorDlg.Execute Then Exit;
DuckBarcode.ColorBK := ColorDlg.Color;
// asdf
End;
Procedure TFormMain.BBarColorClick(Sender: TObject);
Begin
ColorDlg.Color := DuckBarcode.ColorBar;
if not ColorDlg.Execute Then Exit;
DuckBarcode.ColorBar := ColorDlg.Color;
End;
Procedure TFormMain.RBLeftClick(Sender: TObject);
Begin
if RBLeft.Checked Then
DuckBarcode.Alignment := taLeftJustify
Else
if RBRight.Checked Then
DuckBarcode.Alignment := taRightJustify
Else
DuckBarcode.Alignment := taCenter;
End;
Procedure TFormMain.Button1Click(Sender: TObject);
Begin
FormPrint.ShowModal;
if FormPrint.ModalResult = mrOK Then
Begin
With FormPrint Do
Begin
DuckBarcode.BarWidthMM := rBarWidth;
DuckBarcode.Print (rLeft, rTop);
End;
End;
End;
End.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -