![]() |
fahrzeugauswahl
hallo ihr
eigentlcih sollte ich dieses programm zuhause fertig machen, aber leider funktioniert nun gar nichts mehr. :? wäre nett wenn mir jemand helfen könnte eigentlich sollte in der stringrid die daten der aus der in der radiogroup ausgewählten fahrzeuge eigetragen werden wer nett wenn mir jemand helfen könnte also hier ist das programm
Delphi-Quellcode:
und 2. unit
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, StdCtrls, ExtCtrls; type TForm1 = class(TForm) RadioGroup1: TRadioGroup; Button1: TButton; Button2: TButton; Edit1: TEdit; Edit2: TEdit; Label1: TLabel; Label2: TLabel; StringGrid1: TStringGrid; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; Type Kfzart = (PKW, LKW, Motorrad); Fahrzeugtyp = record Baujahr:integer; case KFZ: KFZart of PKW: (Sitze:Byte); LKW: (Achsen,Nutzlast: Integer); Motorrad:(Seitenwagen: Boolean); end; var KFZFELD: array[1..5] of fahrzeugtyp; LAufvar:Byte; Wahl:Char; implementation uses unit2, Unit1; {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin Laufvar:=0; end; procedure TForm1.Button1Click(Sender: TObject); begin Laufvar:=laufvar+1; Edit2.text:= inttostr(laufvar); if Laufvar <= 5 then begin KFZFeld[Laufvar].Baujahr:=strtoint(edit1.text); case Fahrzeugauswahl.ItemIndex of 0: begin KFZFeld[Laufvar].KFZ:=PKW; form2.label1.caption:='Anzahl der Sitze'; // KFZfelf[laufvar].sitze:=strtoint] form2.edit2.text:='******************************'; form2.edit2.readonly:=true; form2.showmodal; form2.label3.caption:=''; form2.label4.caption:=''; end; {PKW} 1: begin KFZFeld[Laufvar].KFZ:=LKW; form2.show; form2.label1.caption:='Achsen'; form2.label2.caption:='Nutzlast'; form2.edit2.text:=''; form2.edit2.readonly:=false; form2.label3.caption:=''; form2.label4.caption:='Tonnen'; end; {LKW} 2: begin KFZFeld[Laufvar].KFZ:=Motorrad; form2.show; form2.label1.caption:='Seitenwagen'; form2.label2.caption:=''; form2.edit2.text:='******************************'; form2.edit2.readonly:=true; form2.label4.caption:=''; form2.label3.caption:=''; end; end; end; {MOTOrrad} end;//CASE procedure TForm1.Button2Click(Sender: TObject); var i: integer; begin Form1.stringgrid1.cells [0,0]:= 'Fahrzeuge'; Form1.stringgrid1.cells[0,1]:='PKW'; Form1.stringgrid1.cells[0,2]:='LKW'; Form1.stringgrid1.cells[0,3]:='Motorrad'; Form1.stringgrid1.cells[1,0]:='Baujahr'; Form1.stringgrid1.cells[2,0]:='Sitze'; Form1.stringgrid1.cells[3,0]:= 'Seitenwagen'; Form1.stringgrid1.cells[4,0]:= 'Achsen'; Form1.stringgrid1.cells[5,0]:= 'Nutzlast'; for i:=1 to 5 do case KFZFeld[i].KFZ of Pkw: begin Form1.stringgrid1.cells [1,1]:=inttostr(KFZFeld[].Baujahr); Form1.stringgrid1.cells[2,1]:=inttostr(KFZFeld[i].Baujahr); end; Lkw: begin Form1.stringgrid1.cells [1,2]:=inttostr(KFZFeld[2].Baujahr); Form1.stringgrid1.cells [5,2]:=inttostr(KFZFeld[4].nutzlast); Form1.stringgrid1.cells [4,2]:=inttostr(KFZFeld[4].Achsten) end; Motorrad begin Form1.stringgrid1.cells [1,3]:=inttostr(KFZFeld[5].Baujahr); Form1.stringgrid1.cells [3,3]:=inttostr(KFZFeld[5].Seitenwagen end; end.
Delphi-Quellcode:
unit Unit2;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm2 = class(TForm) Button1: TButton; Edit1: TEdit; Edit2: TEdit; Label1: TLabel; Label2: TLabel; private { Private-Deklarationen } public { Public-Deklarationen } end; var Form2: TForm2; implementation uses Unit1; {$R *.dfm} if modalresult= mrok then begin if form1.Fahrzeugauswahl.itemindex=0 then begin KFZFeld[laufvar].sitze:=strtoint(edit1.text); form2.hide; end else begin KFZFeld[laufvar].Achsen:=strtoint(edit1.text); KFZFeld[laufvar].Nutzlast:=strtoint(edit1.text); form2.hide; end; end; end; end. also schon mal danke im vorraus |
Re: fahrzeugauswahl
Es wäre sicherlich hilfreich, wenn du uns sagen würdest, was genau nicht funktioniert ;)
|
Re: fahrzeugauswahl
also
wenn ich das programm starte dann bekomm ich in unit 2 immer die fehlermeldung:
Delphi-Quellcode:
if modalresult= mrok
[Fehler] Unit2.pas(31): Deklaration erwartet, aber 'IF' gefunden |
Re: fahrzeugauswahl
hi,
ganz einfach: du schriebst code außerhalb einer function/procedure. das geht eben nicht ;) aenogym |
Re: fahrzeugauswahl
huhu
danke ;) also ich hab jetzt ne TForm2.FormCreate procedure... und es geht soweit... bzw. nuja wie kann ich denn jetzt dafür sorgen dass in die tabelle nur werte für das fahrzeug eingetragne werden, das ich ausgewählt habe?
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var i: integer; begin Form1.stringgrid1.cells [0,0]:= 'Fahrzeuge'; Form1.stringgrid1.cells[0,1]:='PKW'; Form1.stringgrid1.cells[0,2]:='LKW'; Form1.stringgrid1.cells[0,3]:='Motorrad'; Form1.stringgrid1.cells[1,0]:='Baujahr'; Form1.stringgrid1.cells[2,0]:='Sitze'; Form1.stringgrid1.cells[3,0]:= 'Seitenwagen'; Form1.stringgrid1.cells[4,0]:= 'Achsen'; Form1.stringgrid1.cells[5,0]:= 'Nutzlast'; for i:=1 to 5 do case KFZFeld[i].KFZ of Pkw: begin Form1.stringgrid1.cells [1,1]:=inttostr(KFZFeld[2].Baujahr); { hier bei dem Kfzfeld[2 usw] muss wohl was geändert werden} Form1.stringgrid1.cells[2,1]:=inttostr(KFZFeld[2].Baujahr); end; Lkw: begin Form1.stringgrid1.cells [1,2]:=inttostr(KFZFeld[2].Baujahr); Form1.stringgrid1.cells [5,2]:=inttostr(KFZFeld[4].nutzlast); Form1.stringgrid1.cells [4,2]:=inttostr(KFZFeld[4].Achsen) end; Motorrad: begin Form1.stringgrid1.cells [1,3]:=inttostr(KFZFeld[5].Baujahr); end; end; end; wäre nett wenn jemand versuchen könnte das zu verstehn.. :wink: Eine Stunde spaeter: hm kann mir niemand weiter helfen?! :gruebel: [edit=alcaeus]Push-Beitrag mit diesem zusammengefuehrt. Pushen erst nach 24 Stunden! Mfg, alcaeus[/edit] |
Re: fahrzeugauswahl
Delphi-Quellcode:
uses Unit1;
{$R *.dfm} if modalresult= mrok then begin if form1.Fahrzeugauswahl.itemindex=0 then begin KFZFeld[laufvar].sitze:=strtoint(edit1.text); form2.hide; end else begin KFZFeld[laufvar].Achsen:=strtoint(edit1.text); KFZFeld[laufvar].Nutzlast:=strtoint(edit1.text); form2.hide; end; zwischen den resource einbinden und dem if fehlt etwas. UND BITTE BITTE TU DER COMMUNITY EINEN GEFALLEN - RÜCK DEIN CODE EIN! dann kann man bas besser lesen. danke Object Pascal Style Guide ![]() Zitat:
da gibt es doch sicherlich ein ereignis was du nutzen könntest? |
Re: fahrzeugauswahl
hab die fehler inzwischen alle gefunden und das programm funktioniert..
aber dank an alle.. ;) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:49 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-2025 by Thomas Breitkreuz