| Autor |
Beitrag |
phantazy
      
Beiträge: 25
|
Verfasst: Di 19.06.07 10:39
Hey Leute,
da mir gestern shcon so gut geholfen wurde dachte ich mir wende ich mich mal wieder hierhin bevor ich wieder den ganzen tag mit googel verbringe.
Ich würde gerne zwei Radiogroups bilden mit jeweils 3 Radiobuttons und die auswahl dann jeweils in ein array im record einlesen.
Also das ganze ist ein programm zur archivierung von weinflaschen und jetzt möchte ich das die art des weins (Rotwein, Weißwein oder Rosè) eine gruppe bildet und in eine bestimmte stelle im record geschrieben wird und das ganze nochmal mit geschmack (Trocken, Halbtrocken, Lieblich).
Hier mein Code vom Array im record:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17:
| TWein = record art, preis, Jahrgang, Lage, geschmack, verfuegbar, name, memo, lagerzeit: string [50]; end; TweinArray = array [0..100] of Twein; var i:integer; wein:Tweinarray; Form1: TForm1; Datensatz: twein; |
Danke schonmal für jede Hilfe.
Gruß
Daniel
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 19.06.07 11:29
Moin und  im Forum!
phantazy hat folgendes geschrieben: | | Ich würde gerne zwei Radiogroups bilden mit jeweils 3 Radiobuttons und die auswahl dann jeweils in ein array im record einlesen. |
Was ist denn jetzt das Problem bzw. was funktioniert nicht?
phantazy hat folgendes geschrieben: | Hier mein Code vom Array im record:
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| TWein = record art, preis, Jahrgang, Lage, geschmack, verfuegbar, name, memo, lagerzeit: string [50]; end; | |
Bist du sicher, dass es klug ist, alle Elemente im record als String[50] zu deklarieren?  Ich würde sagen, nein...
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
phantazy 
      
Beiträge: 25
|
Verfasst: Di 19.06.07 11:40
Ka obs klug is ^^ is zumindest mal bis jetzt der einfachste weg gewesen.
Mein Problem ist das ich nicht weis wie ich die radiogroup erstelle da momentan alle 6 radiobutton zu einer gruppe gehören. Es sollen aber 2 Gruppen mit jeweils 3 buttons sein. Und pro Gruppe soll ein Platz im array zugewiesen werden das wnen ich jetzt z.B. in Radiogroup 1 (geschmack) den radiobutton 3 (Lieblich) drücke soll in das array an der stelle wein[i].geschmack der wert 'Lieblich' geschrieben werden das wnen ich später auslese in ein Edit feld das wort Lieblich geschrieben wird.
Und das ganze soll halt bei radiogroup 1 (geschmack) mit den drei Radiobuttons (trocken,halbtrocken,lieblich) und bei der radiogroup 2 (art) die drei Radiobuttons (Weißwein,Rotwein,Rosè) zur auswahl stehen.
Radiogroup 1 wird in das feld: 'wein[i].geschmack' geschrieben
Radiogroup 2 wird in das feld: 'wein[i].art' geschrieben
|
|
Narses
      

Beiträge: 10183
Erhaltene Danke: 1256
W10ent
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 19.06.07 11:57
Moin!
Du kannst der Eigenschaft TRadioGroup.ItemIndex entnehmen, welcher (Radio-)Button ausgewählt ist. Der Wert ist 0-basiert (0=der erste Button, 1=zweiter Button, etc.pp.), -1 bedeutet, es ist kein Button ausgewählt.
Deshalb würde es sich anbieten, für diese Weineigenschaften im record den Typ Integer zu wählen, dann kannst du nämlich mit Wein[i].Geschmack := RadioGroupGeschmack.ItemIndex; ganz leicht die Auswahl übernehmen.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
phantazy 
      
Beiträge: 25
|
Verfasst: Di 19.06.07 12:17
Ich habe imemnroch das Problem das ich die einzelnen Button nicht den einzelnen Radiogroups zuordnen kann. der Zeigt mir immer ItemIndex -1 an egal was ich mache.
Und vorallem wie kann ich dann den Radiobuttons die einzelnen werte zuordnen habe jetzt wein[i].art und wein[i].geschmack mal als integer gemacht komem aber nicht weiter stehe irgendwie aufm schlauch 
|
|
24karatboy
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 19.06.07 12:32
du musst 2 radiogroups erstellen und dann tust du die einzelnen punkte im objekt manager unter items eintragen.
eine zeile entspricht einem button
ansprechen tuhst du die dann mit radiogroup1.itemindex=0 dann ist der 1. ausgewählt
1 der 2.
2 der 3.
und -1 dann ist keiner ausgewählt
ich hoffe ich konnte dir helfen
|
|
phantazy 
      
Beiträge: 25
|
Verfasst: Di 19.06.07 12:49
Soweit sogut
ABER
er sieht das ganze immernoch als eine gruppe wenn ich in der radio group 1 etwas mackiere und dann in der 2 dann nimmt er die auswahl aus 1 wiedre raus
|
|
phantazy 
      
Beiträge: 25
|
Verfasst: Di 19.06.07 12:54
Achja und wie muss ich das machen damit das programm merk welches feld aktiviert ist?
|
|
24karatboy
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 19.06.07 12:57
stell die frage bitte noch ein wenig konkreter
|
|
Jann1k
      
Beiträge: 866
Erhaltene Danke: 43
Win 7
TurboDelphi, Visual Studio 2010
|
Verfasst: Di 19.06.07 12:58
Dann machst du was falsch. Zieh eine Radiogroup auf die Form, markiere sie, Doppelklick im objectinspector auf Items und dort trägst du deine Weinarten ein (Weißwein, Rotwein, etc.) und zwar UNTEREINANDER. Dann ziehst du eine zweite Radiougroup auf die Form udn machst mit der dasselbe (nur mitm Geschmack)
€: Okay, hastes wohl schon. Wenn du ein Ereignis auslösen will wenn man in der Radiogroup was ändert, nimm das Onklick ereignis der radiogroup
|
|
phantazy 
      
Beiträge: 25
|
Verfasst: Di 19.06.07 13:18
OK also Das ist schonmal klasse und funzt auch jedoch gibt es noch EIN ABER:
Er soll mir jetzt die auswahl später als text ausgeben also z.B. Halbtrocken und das ganze in ein Editfeld.
Wie kann ich das machen ohne jetzt lästige verzweigungen zu basteln?
|
|
Jann1k
      
Beiträge: 866
Erhaltene Danke: 43
Win 7
TurboDelphi, Visual Studio 2010
|
Verfasst: Di 19.06.07 13:37
mit
Delphi-Quelltext 1: 2: 3: 4:
| radiogroup1.items[0]; radiogroup1.items[1]; radiogroup1.items[2]; ... |
hast du zugriff auf die strings der radiogroup
|
|
phantazy 
      
Beiträge: 25
|
Verfasst: Di 19.06.07 14:09
|
|
24karatboy
      
Beiträge: 110
Win XP
Delphi (Delphi Win32)
|
Verfasst: Di 19.06.07 14:18
tja siehste mal 10 leute können mehr als einer
|
|