|
Registriert seit: 27. Okt 2006 20 Beiträge |
#14
Ok dann ist dieser Fehler nicht reproduzierbar.
Nachfolgend der von mir bereits entspeckte Quelltext.
Delphi-Quellcode:
unit ssumain;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, Menus, IdExplicitTLSClientServerBase, IdFTP, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient, IdHTTP, OleCtrls, SHDocVw_TLB, ExtCtrls; type TNamenArray = Array [0..12] of String; TForm1 = class(TForm) MainMenu1: TMainMenu; PageControl1: TPageControl; TabSheet1: TTabSheet; createTeilnehmerleiste: TButton; sendListe: TButton; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel; Label9: TLabel; Label10: TLabel; Label11: TLabel; Label12: TLabel; Label13: TLabel; Label14: TLabel; Label15: TLabel; Label16: TLabel; IdHTTP1: TIdHTTP; IdFTP1: TIdFTP; Datei1: TMenuItem; Beenden1: TMenuItem; TabSheet2: TTabSheet; WebBrowser1: TWebBrowser; Timer1: TTimer; procedure createTeilnehmerleisteClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure sendListeClick(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); //Eigene Funktionen procedure generateTextfeld(left : Integer; name: String; width:Integer); procedure generateTeilnehmerfelder(); procedure generateUeberschriften(); procedure generateAuswahl(left : Integer; name: String); procedure generateCombobox(left : Integer; name: String; top:integer; width:integer); function datensatzRueckgabe(): String; function setArrays():TNamenArray; procedure loadCombobox(datname:String;cbox:String); function changeToID(temp:String): String; procedure dateiUpload(); procedure Beenden1Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure generateButton(); procedure LoeschenClick(Sender: TObject); procedure loeschenTeilnehmer(tempzahl:String); procedure verschiebeTeilnehmer(tempzahl:String); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; zaehler: Integer; teilnehmer,tempdat : TextFile; implementation uses ssu; {$R *.dfm} procedure TForm1.createTeilnehmerleisteClick(Sender: TObject); begin if zaehler=0 then begin generateUeberschriften(); end; generateTeilnehmerfelder(); end; procedure TForm1.generateTeilnehmerfelder(); var x:Integer; left: Array[0 .. 12] of Integer; name: TNamenArray; tempname: String; width: Array[0 .. 12] of Integer; begin left[0]:=8; left[1]:=72; left[2]:=136; left[3]:=208; left[4]:=248; left[5]:=296; left[6]:=360; left[7]:=432; left[8]:=496; left[9]:=536; left[10]:=600; left[11]:=656; left[12]:=744; width[0]:=64; width[1]:=62; width[2]:=72; width[3]:=40; width[4]:=48; width[5]:=64; width[6]:=72; width[7]:=64; width[8]:=40; width[9]:=64; width[10]:=56; width[11]:=88; width[12]:=70; name:=setArrays(); for x := 0 to 12 do begin generateTextfeld(left[x],name[x],width[x]); end; tempname:='kurs' + IntToStr(zaehler); generateCombobox(830,tempname,-1,135); loadCombobox('kurs.txt',tempname); tempname:='sportart' + IntToStr(zaehler); generateCombobox(965,tempname,-1,50); loadCombobox('sportarten.txt',tempname); generateAuswahl(814,'mitglied'); generateButton(); zaehler:=zaehler+1; end; procedure TForm1.generateButton(); var Button: TButton; tname: String; tleft, ttop,tempzaehler : Integer; begin //Vordekleration der Variablen tname:='loeschen' + IntToStr(zaehler); tleft:=0; tempzaehler:=zaehler-1; ttop:=50+zaehler*20; Button:=TButton.Create(Self); with Button do begin Name:=tname; Parent:=TabSheet1; Left:=tleft; Top:=ttop; Width:=8; Height:=8; OnClick:=LoeschenClick; Caption:='X'; end; end; procedure TForm1.LoeschenClick(Sender: TObject); var tempzahl: String; begin if Sender is TButton then tempzahl:=TButton(Sender).Name; Delete(tempzahl,0,8); tempzahl:=Copy(tempzahl,9,2); loeschenTeilnehmer(tempzahl); zaehler:=zaehler-1; end; procedure TForm1.loeschenTeilnehmer(tempzahl:String); var name: TNamenArray; x,tempx: Integer; temp: String; begin name:=setArrays(); ShowMessage('Loeschen T.'); for x := 0 to 12 do begin TEdit(FindComponent(name[x] + tempzahl)).Free; end; ShowMessage('Loeschen T.'); //Löschen des Mitglied und Kursfeldes TCheckBox(FindComponent('mitglied' + tempzahl)).Free; TComboBox(FindComponent('kurs' + tempzahl)).Free; TComboBox(FindComponent('sportart' + tempzahl)).Free; TButton(FindComponent('loeschen' + tempzahl)).Free; tempx:=strtoint(tempzahl)+1; for x := tempx to zaehler-1 do begin verschiebeTeilnehmer(inttostr(x)); end; end; procedure TForm1.verschiebeTeilnehmer(tempzahl:String); var name: TNamenArray; x: Integer; temp: String; begin ShowMessage('Verschiebe T.'); //erniedrige Tempzahl um 1 (neuer Wert) temp:=InttoStr(Strtoint(tempzahl)-1); //Einlesen des Arrays mit den Editfeldnamen name:=setArrays(); for x := 0 to 12 do begin TEdit(FindComponent(name[x] + tempzahl)).Top:=TEdit(FindComponent(name[x] + tempzahl)).Top-20; TEdit(FindComponent(name[x] + tempzahl)).Name:=name[x] + temp; end; //Positionsänderung der Checkboxen, Comboboxen und des Löschbuttons TCheckBox(FindComponent('mitglied' + tempzahl)).Top:=TCheckBox(FindComponent('mitglied' + tempzahl)).Top-20; TComboBox(FindComponent('kurs' + tempzahl)).Top:=TComboBox(FindComponent('kurs' + tempzahl)).Top-20; TComboBox(FindComponent('sportart' + tempzahl)).Top:=TComboBox(FindComponent('sportart' + tempzahl)).Top-20; TButton(FindComponent('loeschen' + tempzahl)).Top:=TButton(FindComponent('loeschen' + tempzahl)).Top-20; //Umbennen der Checkboxen, Comboboxen und des Löschbuttons TCheckBox(FindComponent('mitglied' + tempzahl)).Name:='mitglied' + temp; TComboBox(FindComponent('kurs' + tempzahl)).Name:='kurs' + temp; TComboBox(FindComponent('sportart' + tempzahl)).Name:='sportart' + temp; TButton(FindComponent('loeschen' + tempzahl)).Name:='loeschen' + temp; end; procedure TForm1.generateAuswahl(left : Integer; name: String); var Auswahlfeld: TCheckBox; tname: String; tbool: Boolean; tleft, tempzaehler : Integer; begin //Vordekleration der Variablen tname:=name + IntToStr(zaehler); tleft:=left; tempzaehler:=zaehler-1; if zaehler>0 then begin tbool:=TCheckBox(FindComponent(name + IntToStr(tempzaehler))).Checked; end; Auswahlfeld:=TCheckBox.Create(Self); with Auswahlfeld do begin if zaehler=0 then begin Checked:=False; end else begin Checked:=tbool; end; Name:=tname; Parent:=TabSheet1; Left:=tleft; Caption:=' '; width:=15; Top:=50+zaehler*20; end; end; procedure TForm1.generateCombobox(left : Integer; name: String; top:Integer; width:integer); var Auswahlfeld: TComboBox; tname: String; twidth, tleft, ttop,tempzaehler : Integer; begin //Vordekleration der Variablen twidth:=width; tname:=name; tleft:=left; tempzaehler:=zaehler-1; ttop:=top; if ttop=-1 then ttop:=50+zaehler*20; Auswahlfeld:=TComboBox.Create(Self); with Auswahlfeld do begin Name:=tname; Parent:=TabSheet1; Left:=tleft; Top:=ttop; Width:=twidth; Text:='Bitte waehlen'; end; end; procedure TForm1.loadCombobox(datname:String;cbox:String); var temp,tcbox:String; combobox: TComboBox; begin tcbox:=cbox; assignfile(tempdat,datname); reset(tempdat); combobox:=TComboBox(FindComponent(tcbox)); while not eof(tempdat) do begin readln(tempdat, temp); with combobox do Items.Add(temp); end; closefile(tempdat); end; procedure TForm1.generateTextfeld(left : Integer; name: String; width:Integer); var Textfeld: TEdit; tname,ttext: String; tleft, twidth,tempzaehler : Integer; begin //Vordekleration der Variablen tname:=name + IntToStr(zaehler); twidth:=width; tleft:=left; tempzaehler:=zaehler-1; if zaehler>0 then begin ttext:=TEdit(FindComponent(name + IntToStr(tempzaehler))).Text; end; //Ab hier wird das Textfeld erzeugt; Textfeld:=TEdit.Create(Self); with Textfeld do begin if zaehler=0 then begin Text:=' '; end else begin Text:=ttext; end; Name:=tname; Parent:=TabSheet1; Left:=tleft; Width:=twidth; Top:=50+zaehler*20; end; end; procedure TForm1.generateUeberschriften(); var x : Integer; begin for x := 1 to 16 do begin (FindComponent('label' + IntToStr(x)) as Tlabel).Visible:=True; end; end; procedure TForm1.FormCreate(Sender: TObject); var x : Integer; begin // Macht die Überschriften Labels unsichtbar for x := 1 to 16 do begin (FindComponent('label' + IntToStr(x)) as Tlabel).Visible:=False; end; // Erzeugt die Ausfahrtliste generateCombobox(250,'ausfahrt',0,300); WebBrowser1.Visible; randomize; end; function TForm1.setArrays():TNamenArray; var name : TNamenArray; begin name[0]:='name'; name[1]:='vorname'; name[2]:='strasse'; name[3]:='plz'; name[4]:='ort'; name[5]:='gebdatum'; name[6]:='email'; name[7]:='telefon'; name[8]:='preis'; name[9]:='bank'; name[10]:='blz'; name[11]:='kontoinhaber'; name[12]:='kontonr'; result := name; end; procedure TForm1.sendListeClick(Sender: TObject); begin end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin Form2.Close; end; procedure TForm1.dateiUpload(); begin end; function TForm1.changeToID(temp:String): String; begin end; function TForm1.datensatzRueckgabe(): String; begin end; procedure TForm1.Beenden1Click(Sender: TObject); begin Form2.Close; Close; end; procedure TForm1.Timer1Timer(Sender: TObject); begin end; end. |
![]() |
Ansicht |
![]() |
![]() |
![]() |
ForumregelnEs ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.
BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus. Trackbacks are an
Pingbacks are an
Refbacks are aus
|
|
Nützliche Links |
Heutige Beiträge |
Sitemap |
Suchen |
Code-Library |
Wer ist online |
Alle Foren als gelesen markieren |
Gehe zu... |
LinkBack |
![]() |
![]() |