access_denied Geschrieben 6. Juni 2003 Geschrieben 6. Juni 2003 Hey leutz - hoffe ihr könnt mir ein wenig weiterhelfen: (Programmiere in Borland C++ falls das was zur Sache tut) Ich versuche zwischen zwei ListBoxes (lbAnstehend und lbZugewiesen) Daten zu verschieben. Und zwar befinden sich in lbAnstehend anstehende Aufträge. Nun soll man in der Combobox cbBearbeiter auswählen wer der Sachbearbeiter ist. Wenn man nun auf einen OK button drückt soll der selektierte Datensatz (immer nur einer, also ohne Multiselect vorerst mal) + der Name des Sachbearbeiters in die zweite ListBox lbZugewiesen verschoben werden. Mein Problem bei der Sache ist: ich weiß nicht wie ich mit dem Befehl lbZugewiesen->Items->Text jetzt nur den selekierten Eintrag bekomme da ich irgendwie nicht den ItemIndex mitgeben kann - oder gibt es da vielleicht eine andere Möglichkeit - wäre schon demjenigen dankbar der mir sagt wie ich nur den Parameter des ItemIndex in dem Add-Befehl mit übergeben kann ( in "[]" - eckigen Klammer gehts auch nicht, so zusagen wie in der for schleife... ) Danke für euer Gehirnschmalz im Voraus schon mal access_denied Zitieren
Crush Geschrieben 8. Juni 2003 Geschrieben 8. Juni 2003 Übergib doch einfach die komplette ComboBox als Argument und füg der anderen eine entsprechende Behandlungsroutine hinzu (Add() überschreiben, weil dieses normal nur einen Eintrag übernimmt). Zitieren
Guybrush Threepwood Geschrieben 10. Juni 2003 Geschrieben 10. Juni 2003 Was liefert dir denn die Funktion lbZugewiesen->Items->Text () ? Zitieren
access_denied Geschrieben 10. Juni 2003 Autor Geschrieben 10. Juni 2003 hey, lbZugewiesen->Items->Text () liefert mir eben alle Einträge die die Listbox enthält - nicht (nur) den ausgewählten. Ich hab das auch mal nur mit ShowMessage() versucht und bekamm eben immer alle Einträge aber keine Selektion. as ist ja das Problem. Und wie ist das mit dem Argument bitte gemeint!? Mein Problem ist wie gesagt das das ich eben keine Selektion treffen kann sondern nur alle Einträge übergeben kann - und das funktioniert einfach nicht mit Add().... ... oder vielleicht bin ich auch einfach zu doof :floet: Zitieren
PuppetMaster Geschrieben 11. Juni 2003 Geschrieben 11. Juni 2003 Hi! Deine Listbox hat auch die Eigeschaft Selected (is ne bool-var). Damit kannste ja in ner Schleife abfragen welcher Eintrag selketiert ist und ihn dann mit Listbox->Items->Strings[position] in ne AnsiString Variable packen zusammen mit dem Namen aus der Combobox. Un dann einfach über Listbox->Items->Add(NeuerEintrag) hinzufügen. Bsp.: void TForm1::NeuerEintrag(void) { for(int i = 0; i<ListBox->Items->Count; ++i) { if(ListBox->Selected[i]) { //Temp is vom Typ AnsiString das du in der Header-Datei deklarieren kannst //nur noch den Namen aus der ComboBox holen und in Temp schreiben und ab damit in die andere Listbox Temp = ListBox->Items->Strings[i]; } } } [/PHP] So in etwa. Nich getestet. *g* Puppet Zitieren
Doham Geschrieben 11. Juni 2003 Geschrieben 11. Juni 2003 Ich müsste daheim nochmal nachgucken, aber es gibt bei Borland AFAIK auch ein ->Items->Index() (oder so ähnlich) das den Index der Auswahl zurückgibt. Zitieren
access_denied Geschrieben 11. Juni 2003 Autor Geschrieben 11. Juni 2003 >>>>PuppetMaster<<<< Ich danke disch :e@sy das funktioniert!!!! Ich bin nicht der der sich so gut mit alle den Funktionen auskennt daher kenn ich manche Funktonen nicht - dazu gehört auch eben Strings() aber danke so geht es!!! Aber eine Kleinigkeit noch: Wie kann ich wenn ich auf nen button klick ein neues Fenster öffnen lassen (zum Einstellen von diversen Optionen). Falls das zu umfangreich ist mach ich noch nen neuen Topic auf!!! Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.