Delphi图象截取编程示例(3)

王朝delphi·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

(五)TMainForm的事件和函数 和 TPrinter打印应用

////////// 打印知识

[菜单项file\打印] 事件:

procedure TMainForm.filePrintItemClick(Sender: TObject);

begin

{kh1}print;{kh2}

Screen.Cursor := crHourglass;

try

if MDIChildCount<>0 then

with ActiveMDIChild as TMDIChild do begin

with Printer do begin

BeginDoc; //开始打印

Canvas.Draw(0,0,Image1.Picture.Graphic); //图形输出

EndDoc; //结束打印

end;

end;

finally

Screen.Cursor := crDefault;

end;

end;

[菜单项file\打印设置] 事件:

procedure TMainForm.filePrintSetClick(Sender: TObject);

begin

Screen.Cursor:=crHourglass;

PrinterSetupDialog1.Execute ;

Screen.Cursor:=crDefault;

end;

[菜单项edit\Preferences\ToolBar] 事件:

procedure TMainForm.toolbarItemClick(Sender: TObject);

begin

toolbarItem.Checked := not toolbarItem.Checked ;

ToolBar2.Visible := toolbarItem.Checked;

end;

[MainMenu1.OnChange] 事件

procedure TMainForm.MainMenu1Change(...);

begin

filePrintItem.Enabled := MDIChildCount>0;

DrawItem.Enabled := MDIChildCount>0;

end;

[TMainForm.FormCreate] 事件

procedure TMainForm.FormCreate(Sender: TObject);

begin

CaptureNum:=0;

DefaultDirectory:=ExtractFilePath(Application.ExeName);

end;

[TMainForm.FileOpen] 事件

procedure TMainForm.OpenDialogExecute(Sender: TObject);

begin

OpenDialog.InitialDir := DefaultDirectory;

if OpenDialog.Execute then

begin

DefaultDirectory:=ExtractFileName(OpenDialog.FileName);

CreateMDIChild(OpenDialog.FileName,false);

end;;

end;

[TMainForm.FileSave、TMainForm.FileSaveAs] 事件

procedure TMainForm.FileSave1Execute(Sender: TObject);

begin

with ActiveMDIChild as TMDIChild do begin

FileName:=ExtractFileName(caption);

FileName:=DefaultDirectory+FileName;

SaveDialog.FileName:=FileName;

if not SaveDialog.Execute then exit;

FileName:=SaveDialog.FileName ;

DefaultDirectory:=ExtractFileName(FileName);

if FileExists(FileName)then begin

if MessageDlg(FileName+' 已存在,替换它吗?',mtInformation,[mbYES,mbNO],0)=mrYES then

DeleteFile(FileName)

else exit;

end;

Image1.Picture.saveToFile(FileName);

Caption:=FileName;

StatusBar.SimpleText := FileName;

end;

end;

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航