AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit ComboBox

Offene Frage von "rollstuhlfahrer"
Ein Thema von FelixR · begonnen am 23. Feb 2011 · letzter Beitrag vom 4. Mai 2011
Antwort Antwort
FelixR

Registriert seit: 11. Mai 2010
2 Beiträge
 
#1

Problem mit ComboBox

  Alt 23. Feb 2011, 14:08
Delphi-Version: 2006
Hallo,
ich programmiere zu Zeit eine Punktekreditkarte (siehe Anhang ).
Die Punktwerte soll der Benutzer in ein Stringgrid eingeben ( funktioniert auch ).
Die Fächer sollen mit Hilfe von Comboboxen ausgewählt werden (funktioniert bis dahin auch )
nun zu meinen Problem/ Frage: Wenn in der Combobox für 1.Fremdsprache zum Beispiel "Englisch" gewählt wird , soll in der Combobox für die 2. Fremdsprache und in der Combobox als zusätzliches Wahlfach Englisch nicht mehr zur Auswahl stehen
Hier wäre mein Quelltext

if ComboBox1.Text = 'Englisch' then
begin
ComboBox7.Items.Delete(ComboBox7.Items.IndexOf('En glisch'));
ComboBox9.Items.Delete(ComboBox9.Items.IndexOf('En glisch'));
end
else if …..

Das funktioniert aber leider so nicht bzw. funktioniert nicht für beide Comboboxen (für combobox 7 funktioniert es)
Ich habe Rechtschreibung überprüft und auch keine weiteren Eigenschaften der comboxen verändert.
Wäre für schnelle Hilfe dankbar
M.f.g. Felix
Miniaturansicht angehängter Grafiken
pkk.jpg  
  Mit Zitat antworten Zitat
hans ditter

Registriert seit: 25. Jun 2010
Ort: Niedersachsen
263 Beiträge
 
Turbo Delphi für Win32
 
#2

AW: Problem mit ComboBox

  Alt 23. Feb 2011, 14:15
Hi ertmal willkommne in der DP!

Bevor irgendwas anderes. Wenn du hier Delphi-Quelltext postest, dann benutzte bitte die Delphi-Tags. Das ist der kleine Helm oben mit dem roten Kranz...

Also, warum das nicht funktioniert wird mir nicht ganz klar. Bist du sicher dass das 'En glisch' geschrieben werden soll?
Ansonsten, veränderst du den Inhalt von Combobox 9 wo anders noch? Vielleicht hast du da was gegensätzliches geschrieben, dass Englisch entfernt aber beim nächsten Klick wieder hinzugefügt wird?

Ansonsten ncohmal ein bisschen mehr Quelltext posten.

LG; hans ditter
RudiRüsselSeineSocketKomponente - SirRufo (--> Chat mit PM)

Delphi Programming is the best one!
  Mit Zitat antworten Zitat
FelixR

Registriert seit: 11. Mai 2010
2 Beiträge
 
#3

AW: Problem mit ComboBox

  Alt 23. Feb 2011, 15:49
Danke für die schnelle Antwort!

Ja das soll schon 'Englisch' heißen ist aber in meinen Programm richtig geschireben


Delphi-Quellcode:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
    if ComboBox1.Text = 'Lateinthen
  begin
    ComboBox7.Items.Delete(ComboBox7.Items.IndexOf('Latein'));
    Combobox9.Items.Delete(Combobox9.Items.IndexOf('Latein'));
    end
  else if ComboBox1.Text = 'Französischthen
  begin
    ComboBox7.Items.Delete(ComboBox7.Items.IndexOf('Französisch'));
    ComboBox9.Items.Delete(ComboBox9.Items.IndexOf('Französisch'));
   end
  else if ComboBox1.Text = 'Russischthen
  begin
    ComboBox7.Items.Delete(ComboBox7.Items.IndexOf('Russisch'));
    ComboBox9.Items.Delete(ComboBox9.Items.IndexOf('Russisch'));
  end
  else if ComboBox1.Text = 'Englischthen
  begin
    ComboBox7.Items.Delete(ComboBox7.Items.IndexOf('Englisch'));
    ComboBox9.Items.Delete(ComboBox9.Items.IndexOf('Englisch'));

end;
 end;
Im Moment wird sonst nichts weiter an den Comboboxen verändert.
Und wie gesagt, habe schon mehrmals die Rechtschreibung überprüft.
Hab schon einige andere Leute gefragt, die mir allerdings auch nicht helfen konnten.
(Selbst mein Informatiklehrer weiß nicht an was das liegen könnte)
L.g. Felix
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Problem mit ComboBox

  Alt 23. Feb 2011, 15:58
Sind bei Dir die Einrückungen auch etwas verquer? Dann würde ich das mal korrigieren (liest sich besser).

Kann Dein Problem an Groß/Kleinschreibung liegen?

Grundsätzlich kannst Du es sicher auch einkürzen:

Delphi-Quellcode:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  ComboBox7.Items.Delete(ComboBox7.Items.IndexOf(ComboBox1.Text));
  Combobox9.Items.Delete(Combobox9.Items.IndexOf(ComboBox1.Text));
end
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
gb0

Registriert seit: 27. Aug 2005
20 Beiträge
 
#5

AW: Problem mit ComboBox

  Alt 23. Feb 2011, 17:40
Stimme Stahli voll zu - das müsste Dein Problem lösen, auch wenn ich es jetzt nicht unter D2006 getestet habe.

Ganz schnell hingetippt: Hier hast Du drei Möglichkeiten, von denen doch mindestens eine verwendbar sein müsste (die obige ist auch dabei). Drei ComboBoxen - ein Eintrag gewählt - löscht den betreffenden Eintrag aus allen drei Listen...

Delphi-Quellcode:
procedure TForm1.ComboBox1Click(Sender: TObject);
var
  choice: byte;
  ctext: string;
begin
  choice := ComboBox1.ItemIndex;
  ctext := ComboBox1.Text;
  ComboBox1.Items.Delete(choice);
  choice := ComboBox2.Items.IndexOf(ctext);
  ComboBox2.Items.Delete(choice);
  choice := ComboBox3.Items.IndexOf(ctext);
  ComboBox3.Items.Delete(choice);
end;

procedure TForm1.ComboBox2Click(Sender: TObject);
var
  ctext: string;
  choice: byte;
begin
  choice := ComboBox2.ItemIndex;
  cText := ComboBox2.Items[choice];
  ComboBox1.Items.Delete(ComboBox1.Items.IndexOf(ctext));
  ComboBox3.Items.Delete(ComboBox3.Items.IndexOf(ctext));
  ComboBox2.Items.Delete(choice);
end;

procedure TForm1.ComboBox3Click(Sender: TObject);
begin
  ComboBox1.Items.Delete(ComboBox1.Items.IndexOf(ComboBox3.Text));
  ComboBox2.Items.Delete(ComboBox2.Items.IndexOf(ComboBox3.Text));
  ComboBox3.Items.Delete(ComboBox3.Items.IndexOf(ComboBox3.Text));
end;
Es ist immer vernünftig, wann immer möglich bei ListBox und ComboBox auf die Original-Einträge zurückzugreifen. Dadurch haben kleinere oder größere Unstimmigkeiten keine Chance, Unfug zu erzeugen, selbst 'En glisch' nicht! Könnte es sein, dass in der String-Liste für eine Deiner ComboBoxen 'Englisch ' steht?

LG, Günther

Geändert von gb0 (23. Feb 2011 um 18:24 Uhr)
  Mit Zitat antworten Zitat
Änabanäna

Registriert seit: 4. Mai 2011
Ort: Schleswig
3 Beiträge
 
Delphi 6 Personal
 
#6

AW: Problem mit ComboBox

  Alt 4. Mai 2011, 17:33
Guten Tag,
ich bin Delphi Anfängerin und möchte eine ComboBox füllen mit allen Sternzeichen, sodass man sein Sternzeichen auswählt und das denn sozusagen 'eingeloggt' ist.
Meine Frage ist nun, wie fülle ich die ComboBox und wie kann man ein Item auswählen?


Hier mein Versuch
Code:
procedure TForm1.cb_sternzeichenChange(Sender: TObject);
begin
cb_sternzeichen.AddItem('Wassermann':String;AObject:TObject);
end;
Schon mal vielen Dank für die Hilfe!
Anna-Lena
  Mit Zitat antworten Zitat
Benutzerbild von stahli
stahli

Registriert seit: 26. Nov 2003
Ort: Halle/Saale
4.343 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Problem mit ComboBox

  Alt 4. Mai 2011, 17:42
Du hast wohl den etwas falschen Ansatz.
Du kannst einfach zur Entwicklungszeit (also wenn Du Dein Formular aufbaust) im Objektinspektor in ComboBox.Items Deine Wasserzeichen eintragen.

Zu Laufzeit kannst Du dann ermitteln, welchen Eintrag der User gewählt hat.
Stahli
http://www.StahliSoft.de
---
"Jetzt muss ich seh´n, dass ich kein Denkfehler mach...!?" Dittsche (2004)
  Mit Zitat antworten Zitat
nuclearping

Registriert seit: 7. Jun 2008
708 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#8

AW: Problem mit ComboBox

  Alt 4. Mai 2011, 17:47
ComboBox.AddItem brauchst du auch nur, wenn du zu deinen Einträgen Objekte verlinken willst. Ansonsten nimm ComboBox.Items.Add. Über ComboBox.ItemIndex bekommst du den aktuell gewählten Eintrag.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#9

AW: Problem mit ComboBox

  Alt 4. Mai 2011, 17:50
Übrigens darfst Du auch gerne eigene Threads erstellen und musst keine fremden kapern
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#10

AW: Problem mit ComboBox

  Alt 4. Mai 2011, 17:53
Bitte nicht böse sein, aber das ist wohl doch sinnvoll: Grundlagentutorial

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es 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

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz