Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi in Laufzeit Objakt hinzufügen (https://www.delphipraxis.net/14226-laufzeit-objakt-hinzufuegen.html)

Remote1 5. Jan 2004 09:23


in Laufzeit Objakt hinzufügen
 
wie kann man während der laufzeit ein objekt in die form hinzufügen?

Remote1 6. Jan 2004 07:23

Re: in Laufzeit Objakt hinzufügen
 
keiner ne idee wie ich ein edit feld oder eine checkbox einfügen kann (kann ja auch bei oncreate geschehen)

Leuselator 6. Jan 2004 07:27

Re: in Laufzeit Objakt hinzufügen
 
z.B. mit:
Delphi-Quellcode:
Var MeinEdit : TEdit;

procedure TForm1.FormCreate(Sender: TObject);
begin
  MeinEdit := TEdit.Create(TForm1);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  MeinEditFreeAndNil(MeinEdit);
end;

Remote1 6. Jan 2004 07:29

Re: in Laufzeit Objakt hinzufügen
 
könnt das so gehn:
Delphi-Quellcode:
var MyButton: TButton;
begin
  MyButton := TButton.Create(Form1);
  with MyButton do begin
    Parent := Form1;
    Height := 32;
    Width := 128;
    Caption := 'Neuer Button';
    Left := 50;
    Top := 50;
    OnClick:=ButtonXClick;
  end;
end;

Leuselator 6. Jan 2004 08:34

Re: in Laufzeit Objakt hinzufügen
 
wenn Du vorher irgendwo in dieser Unit
Delphi-Quellcode:
procedure TForm1.ButonXClick(Sender:TObject)
deklariert hast sollte das so gehen...

Jens Schumann 6. Jan 2004 08:38

Re: in Laufzeit Objakt hinzufügen
 
Zitat:

Zitat von Leuselator
z.B. mit:
Delphi-Quellcode:
Var MeinEdit : TEdit;

procedure TForm1.FormCreate(Sender: TObject);
begin
  MeinEdit := TEdit.Create(TForm1);
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
  MeinEditFreeAndNil(MeinEdit);
end;

Ein Freigeben von MeinEdit ist hier nicht notwendig.
Durch den Paramter Form1 in MeinEdit := TEdit.Create(Form1); wird das Formular zum Besitzer
des Objektes/Komponente. In diesem Fall kümmert sich das Formular um die Freigabe.

Leuselator 6. Jan 2004 08:46

Re: in Laufzeit Objakt hinzufügen
 
Recht hast Du Jens, aber unser (Delphi-)junger Freund hier scheint mir auf dem besten Wege, selbst dynamisch Controls in eigenen Routinen/Komponenten zu erzeugen und dort spätestens tauchen die ersten Schutzverletzungen oder Speicherleaks auf. Daher @Remote1: Wenn der Owner mal kein Form, sondern eine Komponente von Dir sein sollte, dann immer im OnDestroy daran denken, die dynamisch erzeugten Objecte wieder freizugeben. :zwinker:

Remote1 8. Jan 2004 09:10

Re: in Laufzeit Objakt hinzufügen
 
ich hab jetz eigentlich nur noch ein paar kleine probleme:
und zwar ist das allen ziemlich langwierig (muss ne menge obj erstellen und das dauert)
kann man das nicht irgendwie verschnellern bzw die obj verankern (werden bei mir auf registrierkarte erstellt und bei einem change sind die ja dann wieder weg --> deshalb hab ich bei onchange das ganze drin, damit die halt wieder erstellt werden)

Leuselator 8. Jan 2004 09:14

Re: in Laufzeit Objakt hinzufügen
 
¿?
(zeig mal 'n bischen Code...)

Remote1 8. Jan 2004 09:22

Re: in Laufzeit Objakt hinzufügen
 
Delphi-Quellcode:
procedure cedit(ort:tcomponent; par:twincontrol; jahr:string; x,y:integer);
var MyEdit: TEdit;
begin
  MyEdit := TEdit.Create(ort);
  with MyEdit do begin
    Parent := par;
    Height := 21;
    Width := 33;
    Text := jahr;
    Left := x;
    Top := y;
  end;
end;
und das dann bei onchange (bzw extra procedure

Delphi-Quellcode:
 for i:=1 to 5 do
  cedit(Form2.PageControl1, Form2.PageControl1, inttostr(1872+i), 16,32+32*i);
 for i:=1 to 34 do
  cedit(Form2.PageControl1, Form2.PageControl1, inttostr(1884+i), 16,160+32*i);
aber nach dem erstellen will ich alle edit felder auch wieder auslesen und ich hab keine ahnung wie ich die ansprechen soll (edit1 geht ja wohl nicht)

ach ja, das alles soll ne art datenbank werden
ich les halt aus einer ini datensätze aus und dementsprechend werden dann die obj erstellt

Luckie 8. Jan 2004 09:28

Re: in Laufzeit Objakt hinzufügen
 
Zitat:

Zitat von Remote1
aber nach dem erstellen will ich alle edit felder auch wieder auslesen und ich hab keine ahnung wie ich die ansprechen soll (edit1 geht ja wohl nicht)

Dann heißt das Zauberwort, wenn ich dich richtig verstehe, Hier im Forum suchenFindComponent.

Leuselator 8. Jan 2004 09:29

Re: in Laufzeit Objakt hinzufügen
 
Du mußt Dir ein Plätzchen suchen, an dem Du Dir Deine Edits "merkst".
Wenn Du dann aus der procedure "cedit" eine Funktion machst:
Delphi-Quellcode:
function cedit(DeineParameterliste) : TEdit;
begin
  Result := TEdit.Create(ort);
  Result.Top := DeinTopParameter;
  ...
end;
dann liefert Dir die Funktion einen Zeiger auf das Edit zurück.
diesen könntest Du and Deinem sicheren Örtchen (z.B. MeinOertchen : Array [1..5] of TEdit) speichern.
Wenn Du dann später etwas mit den Edits anstellen möchtest, (Text setzten/verschieben/Freigeben), dann kannst Du mit MeinOertchen[Index].Eigenschaft auf die Eigenschaften zugreifen oder mit FreeAndNil(MeinOertchen[Index]); das Edit wieder freigeben.
Gruß

Remote1 16. Jan 2004 09:22

Re: in Laufzeit Objakt hinzufügen
 
könnt ihr ,al durchkontrollieren

ist natürlich noch nicht fertig

Delphi-Quellcode:
unit Kaiserreich;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls,IniFiles, StdCtrls, ExtCtrls, Grids, ValEdit, dbcgrids,
  TabNotBk, OleServer, Access2000, Buttons;

type
  TMuenzen= record
              Jahr:string[4];
              praegung: array [1..9,1..2] of byte;
            end;
           
  TForm2 = class(TForm)
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    TabSheet3: TTabSheet;
    TabSheet4: TTabSheet;
    TabSheet5: TTabSheet;
    TabSheet6: TTabSheet;
    TabSheet8: TTabSheet;
    TabSheet9: TTabSheet;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label10: TLabel;
    ComboBox1: TComboBox;
    Button2: TButton;
    A: TCheckBox;
    B: TCheckBox;
    C: TCheckBox;
    D: TCheckBox;
    E: TCheckBox;
    F: TCheckBox;
    G: TCheckBox;
    H: TCheckBox;
    J: TCheckBox;
    TabSheet7: TTabSheet;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    Label17: TLabel;
    Label18: TLabel;
    Label19: TLabel;
    Label20: TLabel;
    Label21: TLabel;
    Label22: TLabel;
    Label23: TLabel;
    Label24: TLabel;
    Label25: TLabel;
    Label26: TLabel;
    Label27: TLabel;
    Label28: TLabel;
    Label29: TLabel;
    Label30: TLabel;
    Label31: TLabel;
    Label32: TLabel;
    Label33: TLabel;
    Label34: TLabel;
    Label35: TLabel;
    Label36: TLabel;
    Label37: TLabel;
    Label38: TLabel;
    Label39: TLabel;
    Label40: TLabel;
    Label41: TLabel;
    Label42: TLabel;
    Label43: TLabel;
    Label44: TLabel;
    Label45: TLabel;
    Label46: TLabel;
    Label47: TLabel;
    Label48: TLabel;
    Label49: TLabel;
    Label50: TLabel;
    Label51: TLabel;
    Label52: TLabel;
    Label53: TLabel;
    Label54: TLabel;
    Label55: TLabel;
    Label56: TLabel;
    Label57: TLabel;
    Label58: TLabel;
    Label59: TLabel;
    Label60: TLabel;
    Label61: TLabel;
    Label62: TLabel;
    Label63: TLabel;
    Label64: TLabel;
    Label65: TLabel;
    Label66: TLabel;
    Label67: TLabel;
    Label68: TLabel;
    Label69: TLabel;
    Label70: TLabel;
    Label71: TLabel;
    Label72: TLabel;
    Label73: TLabel;
    Label74: TLabel;
    Label75: TLabel;
    Label76: TLabel;
    Label77: TLabel;
    Label78: TLabel;
    Label79: TLabel;
    Label80: TLabel;
    Label81: TLabel;
    Label82: TLabel;
    Label83: TLabel;
    Label84: TLabel;
    Label85: TLabel;
    Label86: TLabel;
    Label87: TLabel;
    Label88: TLabel;
    Label89: TLabel;
    Label90: TLabel;
    procedure FormShow(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure PageControl1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form2: TForm2;
  MO1,MO2,MO5,MO10,MO20,MO50,MO100,MO25,MO1_2: Array [1..37] of Record
                                                   myedit:tedit;
                                                   mycheckbox: array [1..9] of TCheckBox;
                                                 end;
  muenze:TMuenzen;
  f1,f2,f3,f5,f10,f20,f50,f100,f25,f1_2: file of TMuenzen;
 
implementation

{$R *.dfm}


function cedit1(ort:tcomponent; par:twincontrol; jahr:string; x,y:integer) : TEdit;
begin
  Result := TEdit.Create(ort);
  Result.Parent := par;
  Result.Height := 21;
  Result.Width := 33;
  Result.Text := jahr;
  Result.Left := x;
  Result.Top := y;
  Result.ReadOnly:=true;
end;


function ccheckbox(ort:tcomponent; par:twincontrol; hacken:byte; x,y:integer):TCheckBox;
begin
  Result := TCheckBox.Create(ort);
  Result.Parent := par;
  Result.Height := 17;
  Result.Width := 25;
  Result.Caption := '';
  if hacken=1
   then Result.checked :=true
   else Result.checked :=false;
  Result.Left := x;
  Result.Top := y;
end;

procedure pfennig_1;
var i,k:integer;
begin
try
 reset(f1);
 for i:=1 to filesize(f1) do
  begin
   read(f1,muenze);
   MO1[i].myedit:=cedit1(Form2.PageControl1.Pages[0], Form2.PageControl1.Pages[0], muenze.jahr, 16,32*i);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
            MO1[i].mycheckbox[k]:=ccheckbox(Form2.PageControl1.Pages[0], Form2.PageControl1.Pages[0], muenze.praegung[k,2] , k*25+54,32*i);
    end;

  end;
 reset(f1);
finally

end;
end;

procedure pfennig_2;
var i,k:integer;
begin
try
 reset(f2);
 for i:=1 to filesize(f2) do
  begin
   read(f2,muenze);
   MO2[i].myedit:=cedit1(Form2.PageControl1.Pages[1], Form2.PageControl1.Pages[1], muenze.jahr, 16,32*i);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
            MO2[i].mycheckbox[k]:=ccheckbox(Form2.PageControl1.Pages[1], Form2.PageControl1.Pages[1], muenze.praegung[k,2] , k*25+54,32*i);
    end;

  end;
 reset(f2);
finally

end;
end;

procedure pfennig_5;
var i,k:integer;
begin
try
 reset(f5);
 for i:=1 to filesize(f5) do
  begin
   read(f5,muenze);
   MO5[i].myedit:=cedit1(Form2.PageControl1.Pages[2], Form2.PageControl1.Pages[2], muenze.jahr, 16,32*i);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
            MO5[i].mycheckbox[k]:=ccheckbox(Form2.PageControl1.Pages[2], Form2.PageControl1.Pages[2], muenze.praegung[k,2] , k*25+54,32*i);
    end;

  end;
 reset(f5);
finally

end;
end;

procedure pfennig_10;
var i,k:integer;
begin
try
 reset(f10);
 for i:=1 to filesize(f10) do
  begin
   read(f10,muenze);
   MO10[i].myedit:=cedit1(Form2.PageControl1.Pages[3], Form2.PageControl1.Pages[3], muenze.jahr, 16,32*i);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
            MO10[i].mycheckbox[k]:=ccheckbox(Form2.PageControl1.Pages[3], Form2.PageControl1.Pages[3], muenze.praegung[k,2] , k*25+54,32*i);
    end;

  end;
 reset(f10);
finally

end;
end;

procedure pfennig_20;
var i,k:integer;
begin
try
 reset(f20);
 for i:=1 to filesize(f20) do
  begin
   read(f20,muenze);
   MO20[i].myedit:=cedit1(Form2.PageControl1.Pages[4], Form2.PageControl1.Pages[4], muenze.jahr, 16,32*i);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
            MO20[i].mycheckbox[k]:=ccheckbox(Form2.PageControl1.Pages[4], Form2.PageControl1.Pages[4], muenze.praegung[k,2] , k*25+54,32*i);
    end;

  end;
 reset(f20);
finally

end;
end;

procedure pfennig_25;
var i,k:integer;
begin
try
 reset(f25);
 for i:=1 to filesize(f25) do
  begin
   read(f25,muenze);
   MO25[i].myedit:=cedit1(Form2.PageControl1.Pages[5], Form2.PageControl1.Pages[5], muenze.jahr, 16,32*i);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
            MO25[i].mycheckbox[k]:=ccheckbox(Form2.PageControl1.Pages[5], Form2.PageControl1.Pages[5], muenze.praegung[k,2] , k*25+54,32*i);
    end;

  end;
 reset(f25);
finally

end;
end;

procedure pfennig_50;
var i,k:integer;
begin
try
 reset(f50);
 for i:=1 to filesize(f50) do
  begin
   read(f50,muenze);
   MO50[i].myedit:=cedit1(Form2.PageControl1.Pages[6], Form2.PageControl1.Pages[6], muenze.jahr, 16,32*i);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
            MO50[i].mycheckbox[k]:=ccheckbox(Form2.PageControl1.Pages[6], Form2.PageControl1.Pages[6], muenze.praegung[k,2] , k*25+54,32*i);
    end;

  end;
 reset(f50);
finally

end;
end;

procedure pfennig_1_2;
var i,k:integer;
begin
try
 reset(f1_2);
 for i:=1 to filesize(f1_2) do
  begin
   read(f1_2,muenze);
   MO1_2[i].myedit:=cedit1(Form2.PageControl1.Pages[7], Form2.PageControl1.Pages[7], muenze.jahr, 16,32*i);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
            MO1_2[i].mycheckbox[k]:=ccheckbox(Form2.PageControl1.Pages[7], Form2.PageControl1.Pages[7], muenze.praegung[k,2] , k*25+54,32*i);
    end;

  end;
 reset(f1_2);
finally

end;
end;

procedure pfennig_100;
var i,k:integer;
begin
try
 reset(f100);
 for i:=1 to filesize(f100) do
  begin
   read(f100,muenze);
   MO100[i].myedit:=cedit1(Form2.PageControl1.Pages[8], Form2.PageControl1.Pages[8], muenze.jahr, 16,32*i);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
            MO100[i].mycheckbox[k]:=ccheckbox(Form2.PageControl1.Pages[8], Form2.PageControl1.Pages[8], muenze.praegung[k,2] , k*25+54,32*i);
    end;

  end;
 reset(f100);
finally

end;
end;


procedure TForm2.FormShow(Sender: TObject);
begin
pagecontrol1.Pages[0].Show;  // pagecontrol1.TabIndex:=0;
pfennig_1;
pfennig_2;
pfennig_5;
pfennig_10;
pfennig_20;
pfennig_25;
pfennig_50;
pfennig_1_2;
pfennig_100;
Form2.PageControl1.Height:=32*filesize(f1)+128;
end;


procedure TForm2.Button2Click(Sender: TObject);
var i,k:integer;
begin
seek(f3,filesize(f3));
muenze.Jahr:=combobox1.Items.Strings[combobox1.ItemIndex];
muenze.praegung[1,1]:=ord(a.Checked);
muenze.praegung[2,1]:=ord(b.Checked);
muenze.praegung[3,1]:=ord(c.Checked);
muenze.praegung[4,1]:=ord(d.Checked);
muenze.praegung[5,1]:=ord(e.Checked);
muenze.praegung[6,1]:=ord(f.Checked);
muenze.praegung[7,1]:=ord(g.Checked);
muenze.praegung[8,1]:=ord(h.Checked);
muenze.praegung[9,1]:=ord(j.Checked);
write(f3,muenze);

end;

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
var i,k:integer;
begin
try
 reset(f1);
 for i:=1 to filesize(f1) do
  begin
   read(f1,muenze);
   seek(f1,filepos(f1)-1);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
          muenze.praegung[k,2]:=ord(mo1[i].mycheckbox[k].Checked);
    end;
   write(f1,muenze);
  end;
except
  application.MessageBox('Es ist ein Fehler beim speichern der Datei'+#10#13+'"\...\kaiserreich\1_Pfennig"'+#10#13+'aufgetreten','Fehler',mb_ok+mb_iconerror);
end;

try
 reset(f2);
 for i:=1 to filesize(f2) do
  begin
   read(f2,muenze);
   seek(f2,filepos(f2)-1);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
          muenze.praegung[k,2]:=ord(mo2[i].mycheckbox[k].Checked);
    end;
   write(f2,muenze);
  end;
except
  application.MessageBox('Es ist ein Fehler beim speichern der Datei'+#10#13+'"\...\kaiserreich\2_Pfennig"'+#10#13+'aufgetreten','Fehler',mb_ok+mb_iconerror);
end;

try
 reset(f5);
 for i:=1 to filesize(f5) do
  begin
   read(f5,muenze);
   seek(f5,filepos(f5)-1);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
          muenze.praegung[k,2]:=ord(mo5[i].mycheckbox[k].Checked);
    end;
   write(f5,muenze);
  end;
except
  application.MessageBox('Es ist ein Fehler beim speichern der Datei'+#10#13+'"\...\kaiserreich\5_Pfennig"'+#10#13+'aufgetreten','Fehler',mb_ok+mb_iconerror);
end;

try
 reset(f10);
 for i:=1 to filesize(f10) do
  begin
   read(f10,muenze);
   seek(f10,filepos(f10)-1);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
          muenze.praegung[k,2]:=ord(mo10[i].mycheckbox[k].Checked);
    end;
   write(f10,muenze);
  end;
except
  application.MessageBox('Es ist ein Fehler beim speichern der Datei'+#10#13+'"\...\kaiserreich\10_Pfennig"'+#10#13+'aufgetreten','Fehler',mb_ok+mb_iconerror);
end;

try
 reset(f20);
 for i:=1 to filesize(f20) do
  begin
   read(f20,muenze);
   seek(f20,filepos(f20)-1);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
          muenze.praegung[k,2]:=ord(mo20[i].mycheckbox[k].Checked);
    end;
   write(f20,muenze);
  end;
except
  application.MessageBox('Es ist ein Fehler beim speichern der Datei'+#10#13+'"\...\kaiserreich\20_Pfennig"'+#10#13+'aufgetreten','Fehler',mb_ok+mb_iconerror);
end;

try
 reset(f25);
 for i:=1 to filesize(f25) do
  begin
   read(f25,muenze);
   seek(f25,filepos(f25)-1);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
          muenze.praegung[k,2]:=ord(mo25[i].mycheckbox[k].Checked);
    end;
   write(f25,muenze);
  end;
except
  application.MessageBox('Es ist ein Fehler beim speichern der Datei'+#10#13+'"\...\kaiserreich\25_Pfennig"'+#10#13+'aufgetreten','Fehler',mb_ok+mb_iconerror);
end;

try
 reset(f50);
 for i:=1 to filesize(f50) do
  begin
   read(f50,muenze);
   seek(f50,filepos(f50)-1);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
          muenze.praegung[k,2]:=ord(mo50[i].mycheckbox[k].Checked);
    end;
   write(f50,muenze);
  end;
except
  application.MessageBox('Es ist ein Fehler beim speichern der Datei'+#10#13+'"\...\kaiserreich\50_Pfennig"'+#10#13+'aufgetreten','Fehler',mb_ok+mb_iconerror);
end;

try
 reset(f1_2);
 for i:=1 to filesize(f1_2) do
  begin
   read(f1_2,muenze);
   seek(f1_2,filepos(f1_2)-1);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
          muenze.praegung[k,2]:=ord(mo1_2[i].mycheckbox[k].Checked);
    end;
   write(f1_2,muenze);
  end;
except
  application.MessageBox('Es ist ein Fehler beim speichern der Datei'+#10#13+'"\...\kaiserreich\1_2_Pfennig"'+#10#13+'aufgetreten','Fehler',mb_ok+mb_iconerror);
end;

try
 reset(f100);
 for i:=1 to filesize(f100) do
  begin
   read(f100,muenze);
   seek(f100,filepos(f100)-1);
   for k:=1 to 9 do
    begin
     if muenze.praegung[k,1]=1 then
          muenze.praegung[k,2]:=ord(mo100[i].mycheckbox[k].Checked);
    end;
   write(f100,muenze);
  end;
except
  application.MessageBox('Es ist ein Fehler beim speichern der Datei'+#10#13+'"\...\kaiserreich\100_Pfennig"'+#10#13+'aufgetreten','Fehler',mb_ok+mb_iconerror);
end;

try
  closefile(f1);
  closefile(f2);
  closefile(f5);
  closefile(f10);
  closefile(f20);
  closefile(f50);
  closefile(f100);
  closefile(f25);
  closefile(f1_2);
  closefile(f3);
except
  application.MessageBox('Es ist ein Fehler beim schließen der Dateien aufgetreten','Fehler',mb_ok+mb_iconerror);
end;
end;

procedure TForm2.FormCreate(Sender: TObject);
begin
assignfile(f1,pchar(ExtractFilePath(Application.ExeName)+'data\kaiserreich\1_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\kaiserreich\1_pfennig.ini')
  then reset(f1)
  else rewrite(f1);

assignfile(f2,pchar(ExtractFilePath(Application.ExeName)+'data\kaiserreich\2_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\kaiserreich\2_pfennig.ini')
  then reset(f2)
  else rewrite(f2);

assignfile(f5,pchar(ExtractFilePath(Application.ExeName)+'data\kaiserreich\5_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\kaiserreich\5_pfennig.ini')
  then reset(f5)
  else rewrite(f5);

assignfile(f10,pchar(ExtractFilePath(Application.ExeName)+'data\kaiserreich\10_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\kaiserreich\10_pfennig.ini')
  then reset(f10)
  else rewrite(f10);

assignfile(f20,pchar(ExtractFilePath(Application.ExeName)+'data\kaiserreich\20_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\kaiserreich\20_pfennig.ini')
  then reset(f20)
  else rewrite(f20);

assignfile(f50,pchar(ExtractFilePath(Application.ExeName)+'data\kaiserreich\50_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\kaiserreich\50_pfennig.ini')
  then reset(f50)
  else rewrite(f50);

assignfile(f100,pchar(ExtractFilePath(Application.ExeName)+'data\kaiserreich\100_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\kaiserreich\100_pfennig.ini')
  then reset(f100)
  else rewrite(f100);


assignfile(f25,pchar(ExtractFilePath(Application.ExeName)+'data\kaiserreich\25_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\kaiserreich\25_pfennig.ini')
  then reset(f25)
  else rewrite(f25);

assignfile(f1_2,pchar(ExtractFilePath(Application.ExeName)+'data\kaiserreich\1_2_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\kaiserreich\1_2_pfennig.ini')
  then reset(f1_2)
  else rewrite(f1_2);

assignfile(f3,pchar(ExtractFilePath(Application.ExeName)+'data\temp_pfennig.ini'));
if fileexists(ExtractFilePath(Application.ExeName)+'data\temp_pfennig.ini')
  then reset(f3)
  else rewrite(f3);
end;

procedure TForm2.PageControl1Change(Sender: TObject);
begin
 case pagecontrol1.TabIndex of
  0:Form2.PageControl1.Height:=32*filesize(f1)+128;
  1:Form2.PageControl1.Height:=32*filesize(f2)+128;
  2:Form2.PageControl1.Height:=32*filesize(f5)+128;
  3:Form2.PageControl1.Height:=32*filesize(f10)+128;
  4:Form2.PageControl1.Height:=32*filesize(f20)+128;
  5:Form2.PageControl1.Height:=32*filesize(f25)+128;
  6:Form2.PageControl1.Height:=32*filesize(f50)+128;
  7:Form2.PageControl1.Height:=32*filesize(f1_2)+128;
  8:Form2.PageControl1.Height:=32*filesize(f100)+128;
 end;

end;

end.

Sharky 16. Jan 2004 09:28

Re: in Laufzeit Objakt hinzufügen
 
Hai Remote1,

nehme diesen überlangen Quellcode bitte aus dem Posting und füge ihn als Datei an. Danke.

Remote1 19. Jan 2004 09:09

Re: in Laufzeit Objakt hinzufügen
 
Liste der Anhänge anzeigen (Anzahl: 1)
hier noch mal die datei

Remote1 19. Jan 2004 09:10

Re: in Laufzeit Objakt hinzufügen
 
vielleicht alles noch in mehr proceduren hauen -> wirds kleiner


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz