EAccessViolation D6
From: Rob Solomon (agent_at_drrob1.com)
Date: 02/26/05
- Next message: Raptor: "Re: Help me fix a small unit?"
- Previous message: Thomas Eg Jørgensen: "Delphi 2005 keeps changing the layout of my code?!"
- Next in thread: Rob Kennedy: "Re: EAccessViolation D6"
- Reply: Rob Kennedy: "Re: EAccessViolation D6"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Sat, 26 Feb 2005 15:57:32 -0500
I am going thru the Delphi lessons at about.com. In the MDI lesson I am
having touble. Any help would be appreciated.
Thanks
procedure TChildFr.LoadPicture;
var OpenPicDlg : TOpenPictureDialog;
begin
OpenPicDlg := TOpenPictureDialog.Create(Self);
if OpenPicDlg.Execute then begin
==> Image1.Picture.LoadFromFile(OpenPicDlg.FileName); EAccessViolation
end;
OpenPicDlg.Free;
end;
Full code
unit Main;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,
Dialogs, Menus;
type
TMainFr = class(TForm)
MainMenu1: TMainMenu;
File1: TMenuItem;
Newchild1: TMenuItem;
CloseAll1: TMenuItem;
Window1: TMenuItem;
Cascade1: TMenuItem;
Tile1: TMenuItem;
ArrangeAll1: TMenuItem;
LoadPicture1: TMenuItem;
procedure Newchild1Click(Sender: TObject);
procedure CloseAll1Click(Sender: TObject);
procedure Cascade1Click(Sender: TObject);
procedure Tile1Click(Sender: TObject);
procedure ArrangeAll1Click(Sender: TObject);
procedure LoadPicture1Click(Sender: TObject);
private
{ Private declarations }
procedure CreateChildForm (const childName : string);
public
{ Public declarations }
end;
var
MainFr: TMainFr;
implementation
uses Childu, ExtDlgs;
{$R *.dfm}
procedure TMainFr.CreateChildForm
(const childName : string);
var Child: TChildFr;
begin
Child := TChildFr.Create(Application);
Child.Caption := childName;
end;
procedure TMainFr.Newchild1Click(Sender: TObject);
begin
CreateChildForm('Child '+IntToStr(MDIChildCount+1));
end;
procedure TMainFr.CloseAll1Click(Sender: TObject);
var i: integer;
begin
for i:= 0 to MdiChildCount - 1 do
MDIChildren[i].Close;
end;
procedure TMainFr.Cascade1Click(Sender: TObject);
begin
Cascade;
end;
procedure TMainFr.Tile1Click(Sender: TObject);
begin
Tile;
end;
procedure TMainFr.ArrangeAll1Click(Sender: TObject);
begin
ArrangeIcons;
end;
procedure TMainFr.LoadPicture1Click(Sender: TObject);
begin
Childu.ChildFr.LoadPicture;
end;
end.
unit Childu;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls,
Forms,
Dialogs, ExtCtrls;
type
TChildFr = class(TForm)
Image1: TImage;
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
procedure LoadPicture;
end;
var
ChildFr: TChildFr;
implementation
uses ExtDlgs;
{$R *.dfm}
procedure TChildFr.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TChildFr.LoadPicture;
var OpenPicDlg : TOpenPictureDialog;
begin
OpenPicDlg := TOpenPictureDialog.Create(Self);
if OpenPicDlg.Execute then begin
Image1.Picture.LoadFromFile(OpenPicDlg.FileName);
end;
OpenPicDlg.Free;
end;
end.
- Next message: Raptor: "Re: Help me fix a small unit?"
- Previous message: Thomas Eg Jørgensen: "Delphi 2005 keeps changing the layout of my code?!"
- Next in thread: Rob Kennedy: "Re: EAccessViolation D6"
- Reply: Rob Kennedy: "Re: EAccessViolation D6"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|