Witam
Skorzystałem z jednego z gotowców dostępnych na portalu 4programmers.net, lecz kod ten nie działa mi (cały kod na końcu posta)
link do programu gotowca:
Otwieranie nowego dokumentu w zakładce
Po zrobieniu wszystkiego krok po kroku, nie ma tego za dużo, wywala mi następujące komunikat:
[Error] MAIN.PAS(97): Undeclared identifier: 'Memo'
Grzebiąc po innych forach odnalazłem, że wszystkie kody nie mają Memo, tylko Memo1
dodałem więc 1 po memo i wygenerowało mi taki błąd:
[Error] MAIN.PAS(97): Not enough actual parameters
Szperając dalej po forach już zagranicznych natrafiłem na opcje dodania takich linijek:
Child := ActiveMDIChild;
po dodaniu wygenerował się taki błąd:
[Error] MAIN.PAS(89): Incompatible types: 'TMDIChild' and 'TForm'
Później zaminiłem
Child := ActiveMDIChild;
na
Child := TMDIChild(ActiveMDIChild);
i znów wywaliło mi taki błąd
[Error] MAIN.PAS(98): Not enough actual parameters
Czy ktoś ma jakieś rozwiązanie gdzie popełniłem błąd aby to zadziałało? Byłbym wdzięczny za wszelką pomoc. Dodany kod pogrubiny, kod na którym wywala mi błąd kursywa.
unit MAIN;
interface
uses Windows, SysUtils, Classes, Graphics, Forms, Controls, Menus,
StdCtrls, Dialogs, Buttons, Messages, ExtCtrls, ComCtrls, StdActns,
ActnList, ToolWin, ImgList;
type
TMainForm = class(TForm)
MainMenu1: TMainMenu;
File1: TMenuItem;
FileNewItem: TMenuItem;
FileOpenItem: TMenuItem;
FileCloseItem: TMenuItem;
Window1: TMenuItem;
Help1: TMenuItem;
N1: TMenuItem;
FileExitItem: TMenuItem;
WindowCascadeItem: TMenuItem;
WindowTileItem: TMenuItem;
WindowArrangeItem: TMenuItem;
HelpAboutItem: TMenuItem;
OpenDialog: TOpenDialog;
FileSaveItem: TMenuItem;
FileSaveAsItem: TMenuItem;
Edit1: TMenuItem;
CutItem: TMenuItem;
CopyItem: TMenuItem;
PasteItem: TMenuItem;
WindowMinimizeItem: TMenuItem;
StatusBar: TStatusBar;
ActionList1: TActionList;
EditCut1: TEditCut;
EditCopy1: TEditCopy;
EditPaste1: TEditPaste;
FileNew1: TAction;
FileSave1: TAction;
FileExit1: TAction;
FileOpen1: TAction;
FileSaveAs1: TAction;
WindowCascade1: TWindowCascade;
WindowTileHorizontal1: TWindowTileHorizontal;
WindowArrangeAll1: TWindowArrange;
WindowMinimizeAll1: TWindowMinimizeAll;
HelpAbout1: TAction;
FileClose1: TWindowClose;
WindowTileVertical1: TWindowTileVertical;
WindowTileItem2: TMenuItem;
ToolBar2: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
ToolButton9: TToolButton;
ToolButton7: TToolButton;
ToolButton8: TToolButton;
ToolButton10: TToolButton;
ToolButton11: TToolButton;
ImageList1: TImageList;
pctrlMain: TPageControl;
procedure FileNew1Execute(Sender: TObject);
procedure FileOpen1Execute(Sender: TObject);
procedure HelpAbout1Execute(Sender: TObject);
procedure FileExit1Execute(Sender: TObject);
private
{ Private declarations }
procedure CreateMDIChild(const Name: string);
public
{ Public declarations }
end;
var
MainForm: TMainForm;
implementation
{$R *.dfm}
uses CHILDWIN, about;
procedure TMainForm.CreateMDIChild(const Name: string);
var
Child: TMDIChild;
zakladka: TTabSheet;
begin
** Child := TMDIChild(ActiveMDIChild);**
child := TMDIChild.Create(Application);
zakladka := TTabSheet.Create(Self);
zakladka.Caption := extractfilename(name);
zakladka.PageControl := pctrlMain;
child.Align := alClient;
child.Visible := true;
Child.Caption := Name;
child.SetFocus;
// if FileExists(Name) then Child.Memo1.Lines.LoadFromFile;//
child.Parent := zakladka;
pctrlMain.ActivePage := zakladka;
end;
procedure TMainForm.FileNew1Execute(Sender: TObject);
begin
CreateMDIChild('NONAME' + IntToStr(MDIChildCount + 1));
end;
procedure TMainForm.FileOpen1Execute(Sender: TObject);
begin
if OpenDialog.Execute then
CreateMDIChild(OpenDialog.FileName);
end;
procedure TMainForm.HelpAbout1Execute(Sender: TObject);
begin
AboutBox.ShowModal;
end;
procedure TMainForm.FileExit1Execute(Sender: TObject);
begin
Close;
end;
end.
dodanie znaczników <code class="delphi"> i <code class="none">
- @furious programming