📄 drawform.h
字号:
//---------------------------------------------------------------------------
#ifndef drawformH
#define drawformH
//---------------------------------------------------------------------------
#include <Classes.hpp>
#include <Controls.hpp>
#include <StdCtrls.hpp>
#include <Forms.hpp>
#include <Buttons.hpp>
#include <ComCtrls.hpp>
#include <ExtCtrls.hpp>
#include <Menus.hpp>
#include <Graphics.hpp>
#include <Dialogs.hpp>
#include <Clipbrd.hpp>
#include <ExtDlgs.hpp> //增加的头文件
#include <vcl/printers.hpp>//增加的头文件
#include <jpeg.hpp>
//---------------------------------------------------------------------------
enum TDrawingTool {dtLine,dtPolyLine,dtEllipse,dtRectangle,dtRoundRect,
dtText,dtPencil,dtSelect,dtBezier,dtRubber};
class Tmainform : public TForm
{
__published: // IDE-managed Components
TMainMenu *MainMenu1;
TMenuItem *FileMenu;
TMenuItem *FileExit;
TPanel *Panel1;
TSpeedButton *LineButton;
TStatusBar *StatusBar1;
TSpeedButton *PlineButton;
TPanel *Panel2;
TImage *Image1;
TSpeedButton *EllipseButton;
TSpeedButton *RectangleButton;
TSpeedButton *RoundRctButton;
TSpeedButton *TextButton;
TEdit *Edit;
TPanel *PenColor;
TColorDialog *ColorDialog;
TSpeedButton *PenButton;
TSpeedButton *SelectButton;
TMenuItem *E1;
TMenuItem *EditCopy;
TMenuItem *EditCut;
TMenuItem *EditPaste;
TMenuItem *N1;
TMenuItem *EditClear;
TPanel *BrushColor;
TMenuItem *HelpMenu;
TMenuItem *HelpAbout;
TMenuItem *FileOpen;
TMenuItem *FileNew;
TMenuItem *FileSave;
TMenuItem *FileSaveAs;
TMenuItem *N2;
TMenuItem *FilePrint;
TMenuItem *FilePrintSetup;
TMenuItem *N3;
TOpenPictureDialog *OpenPictureDialog1;
TSavePictureDialog *SavePictureDialog1;
TPrinterSetupDialog *PrinterSetupDialog1;
TPrintDialog *PrintDialog1;
TControlBar *ControlBar1;
TComboBox *PenStyle;
TComboBox *BrushStyle;
TComboBox *FontBox;
TPanel *Panel4;
TEdit *PenWidth;
TUpDown *UpDown1;
TSpeedButton *BezierButton;
TSpeedButton *RubberButton;
void __fastcall FileExitClick(TObject *Sender);
void __fastcall FormClose(TObject *Sender, TCloseAction &Action);
void __fastcall Image1MouseUp(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y);
void __fastcall Image1MouseDown(TObject *Sender, TMouseButton Button,
TShiftState Shift, int X, int Y);
void __fastcall Image1MouseMove(TObject *Sender, TShiftState Shift,
int X, int Y);
void __fastcall Image1Click(TObject *Sender);
void __fastcall PenColorClick(TObject *Sender);
void __fastcall FormCreate(TObject *Sender);
void __fastcall PenStyleChange(TObject *Sender);
void __fastcall BrushStyleChange(TObject *Sender);
void __fastcall BrushColorClick(TObject *Sender);
void __fastcall PenWidthChange(TObject *Sender);
void __fastcall FontBoxChange(TObject *Sender);
void __fastcall EditClearClick(TObject *Sender);
void __fastcall EditCopyClick(TObject *Sender);
void __fastcall EditPasteClick(TObject *Sender);
void __fastcall HelpAboutClick(TObject *Sender);
void __fastcall FileNewClick(TObject *Sender);
void __fastcall FileOpenClick(TObject *Sender);
void __fastcall FileSaveClick(TObject *Sender);
void __fastcall FileSaveAsClick(TObject *Sender);
void __fastcall ButtonClick(TObject *Sender);
void __fastcall EditCutClick(TObject *Sender);
void __fastcall FilePrintSetupClick(TObject *Sender);
void __fastcall FilePrintClick(TObject *Sender);
private:
int PolyCount,BezierEnd; //统计多义线的节点,统计Bezier曲线编辑次数的标志
bool Drawing,OutText,Selected,msHide; //是/否绘图标志,是/否输出文本标志,是/否已经选择标志,鼠标隐藏标志
POINT Origin,MovePt; //鼠标按下时的起点,鼠标移动到的点
TPoint PolyPt[100]; //存放多义线的节点
TPoint BezierPt[4]; //存放Bezier曲线的控制点
TDrawingTool DrawingTool; //图形工具变量
TRect SelectRect; //选择的矩形区域
AnsiString CurrentFile; //当前的文件名
Graphics::TBitmap *SelectImage;
TBrushStyle PreFill; //前一种填充模式
int oldx,oldy,newx,newy;
TRect DRect,SRect; //目标图像矩形,源图像矩形
void __fastcall GetFontNames(void);
void __fastcall ShowHint(TObject *Sender);
TRect __fastcall GetRect(TPoint First, TPoint Second);
void __fastcall GetSelImage(TRect);
bool __fastcall OpenAFile();
void __fastcall NewAFile();
void RubberFill(int X, int Y,int Intend,int CurSize);
bool __fastcall SaveAFile(AnsiString SaveFileName);
public: // User declarations
int sSide,dSide;
__fastcall Tmainform(TComponent* Owner);
};
//---------------------------------------------------------------------------
class TCharsetObject : public TObject
{
public:
int Charset;
__fastcall TCharsetObject(int FCharset);
};
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
extern PACKAGE Tmainform *mainform;
//---------------------------------------------------------------------------
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -