Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi 3 x ComboBox in InputBox mit Event. Bitte helfen (https://www.delphipraxis.net/193776-3-x-combobox-inputbox-mit-event-bitte-helfen.html)

IMPEGA 7. Sep 2017 17:30

3 x ComboBox in InputBox mit Event. Bitte helfen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo mal wieder.

Ich versuche zur Laufzeit in einer InputBox 3 ComboBoxe's zu erstellen.
So weit funktioniert Alles.
Ich habe Probleme mit den Events.
Ich möchte die Combos voneinander abhängig machen.
Sprich Falls ich in Combo1 "Wert1" einstelle, sollten Combo2 und Combo3 automatisch den "Wert"2 und "Wert3" erhalten.
Wenn ich in Combo1 "Wert2" einstelle sollten Combo2 "Wert3" und Combo3 den "Wert1" erhalten. u.s.w
Das Auslagern in 2-te Unit muss auch vorhanden sein.
Hätte ich das ganze in Form1 packen können wäre es auch kein Problem. Es muss aber genau so wie in Muster angegeben erledigt werden.

Die Lösung für ein Event habe ich so weit im Netz gefunden, leider habe ich keine Ahnung wie man es auf die Combos zur Laufzeit erstellt anwenden könnte.
Mein Testprojekt habe ich angehängt. Habt bitte Mitleid mit mir. Coden ist nur mein Hobby.

Hoffentlich habe ich mein Problem ausreichend beschrieben und erhalte paar Ansätze.

IMPEGA 11. Sep 2017 14:36

AW: 3 x ComboBox in InputBox mit Event. Bitte helfen
 
Ich kann leider nicht mehr editieren.

Problem gelöst. Win32API zu Hilfe genommen und schon ging es.
Schade nur dass Niemand was dazu geschrieben hat.
Macht aber nichts. Hauptsache ich habe es gelöst.

haentschman 11. Sep 2017 14:47

AW: 3 x ComboBox in InputBox mit Event. Bitte helfen
 
Moin...:P
Zitat:

Problem gelöst. Win32API zu Hilfe genommen und schon ging es.
...das würde mich mal interessieren.
Zitat:

Schade nur dass Niemand was dazu geschrieben hat.
...weil keiner weiß was du vorhast? :zwinker:
Zitat:

Ich versuche zur Laufzeit in einer InputBox 3 ComboBoxe's zu erstellen.
Müssen die CB auch zur Laufzeit erzeugt werden? Geht auch auch auf dem Formular? Immer 3 CB? Dynamische Erzeugung des Forms? Warum?
...soviele Unklarheiten warum du sowas machst. Ich wette es gibt eine einfache Lösung dafür. :zwinker:
Delphi-Quellcode:
Combo1 := TComboBox.Create(Form);
  with Combo1 do
    begin
      Parent := Form;
      Style := csDropDownList;
      Items.Assign(AList);
      ItemIndex := 0;

      Left := Prompt.Left;
      Top  := Prompt.Top + Prompt.Height + 5;
      Width := 80;
      TMethod(Event).Code := @Combo1Change;
      TMethod(Event).Data := Combo1;
      OnChange           := Event;
    end;
Wo hast du das mit dem Pointer auf das Event her?

IMPEGA 11. Sep 2017 18:38

AW: 3 x ComboBox in InputBox mit Event. Bitte helfen
 
Nun bekomme ich doch eine Antwort. Selbst wenn Sie zu komischer Zeit kommt und nicht hilfreich ist.
Trotzdem antworte ich gerne.
Zitat:

...weil keiner weiß was du vorhast?
Ich habe gehofft mich gut genug ausgedrückt zu haben, ansonsten mal nachfragen hätte nicht geschadet.
Zu anderen Aussage. Ich habe ein Projekt hinzugefügt was mein Vorgehen eigentlich sehr genau darstellt.
Zitat:

Müssen die CB auch zur Laufzeit erzeugt werden? Geht auch auch auf dem Formular? Immer 3 CB? Dynamische Erzeugung des Forms? Warum?
...soviele Unklarheiten warum du sowas machst. Ich wette es gibt eine einfache Lösung dafür
Hier könnte ich weit ausholen, mache es aber nicht.
Die Antwort ist recht einfach. Ich habe mir etwas ausgedacht und versuche es umzusetzen.
Um die Sache als Vorlage zB. für andere Projekte zu haben arbeite ich oft mit Dynamischen Objekten.
Und die letzte Sache wäre viel wichtiger. Man muss nicht immer den leichtesten Weg gehen.
Um etwas zu lernen gebe ich mir eine Aufgabe und versuche die zu lösen.
Nicht verwechseln mit Umgehen.
Deshalb auch habe ich nicht nach einer Lösung gefragt, sondern nach Tipps um weiter zu kommen.
In diesem Fall hätte es gereicht zu schreiben: "Versuche doch mit Win32API" und Findwindow.
Damit wäre ich schon gut bedient.

Deine letzte Frage:
Zitat:

Wo hast du das mit dem Pointer auf das Event her?
Kann ich leider nicht beantworten. Ich habe im Netz nach Ansätzen gesucht und irgendwann etwas zu dem Thema gefunden.
Nach einer ausführlichen Analyse entstand das eben. :)
Wie ich schon gesagt habe. Ich code nur aus Spaß an der Sache.

PS: Wegen einige Missverständnisse habe ich meinen fehlerhaften Code raus gelöscht.
Per PN kann ich mich gerne darüber weiter unterhalten.

Luckie 11. Sep 2017 19:06

AW: 3 x ComboBox in InputBox mit Event. Bitte helfen
 
Hilfe geschieht hier alleine auf freiwilliger Basis. Es besteht kein recht auf eine (hilfreiche) Antwort. Also bitte bedenke das in Zukunft.

IMPEGA 12. Sep 2017 06:45

AW: 3 x ComboBox in InputBox mit Event. Bitte helfen
 
@Luckie
Danke für deine hilfreiche Belehrung.
Nun habe ich das Prinzip "Forum" verstanden.
Das hilft mir bei meinem Problem und bringt mich weiter.
Bin selbstverständlich für jede Hilfe dankbar.
Schade dass du nichts zum Thema geschrieben hast, aber immerhin etwas geschrieben.
Zitat:

Es besteht kein recht auf eine (hilfreiche) Antwort.
Zeige mir bitte einen Satz von mir wo ich unfreundlich war, oder etwas verlangt habe.
Wenn man eigenes Bedauern nicht mehr aussprechen kann dann kannst du das Forum gleich vergessen.
Einen schönen Tag wünsche ich.

Luckie 12. Sep 2017 07:01

AW: 3 x ComboBox in InputBox mit Event. Bitte helfen
 
Das wsr nur vorbeugend erwähnt. Aber das
Zitat:

Nun bekomme ich doch eine Antwort. Selbst wenn Sie zu komischer Zeit kommt und nicht hilfreich ist.
tendiert in die Richtung. Einfach bitte in Zukunft etwas auf die Wortwahl achten. Es könnte schnell missverstanden werden.

haentschman 12. Sep 2017 07:30

AW: 3 x ComboBox in InputBox mit Event. Bitte helfen
 
Moin...:P
Zitat:

Man muss nicht immer den leichtesten Weg gehen.
Ist schon richtig. Aber mit Badelatschen über den Mount Everest zu klettern ist eher uncool. 8-)
Zitat:

In diesem Fall hätte es gereicht zu schreiben: "Versuche doch mit Win32API" und Findwindow.
Damit wäre ich schon gut bedient.
Das wirst du hier eher selten hören. Delphi ist quasi, sinngemäß, ein Wrapper um die WinApi, damit man sich nicht darum kümmern muß. :zwinker: Es gibt kaum Fälle wo man mit Delphi Bordmitteln nicht zurecht kommt.
Zitat:

Um die Sache als Vorlage zB. für andere Projekte zu haben arbeite ich oft mit Dynamischen Objekten.
Ist ok... Aber ist imho das dynamische Erzeugen von Controls eher hinderlich. Als Vorlage eignen sich dann eher Forms mit Ableitungen oder Frames mit Ableitungen und den Controls drauf. Diese Forms werden dann, wenn gewollt, dynamisch erzeugt.

Wenn du magst, kann ich das Testprojekt mit Hilfe der VCL abändern. 8-)

IMPEGA 12. Sep 2017 08:01

AW: 3 x ComboBox in InputBox mit Event. Bitte helfen
 
@haentschman
Danke für die nette Antwort.
Zitat:

Wenn du magst, kann ich das Testprojekt mit Hilfe der VCL abändern.
Danke nicht nötig , das ist kein Problem für mich. Es sollte so laufen wie ich es gemacht habe.

Nun aber die Antwort warum.
Ich habe ein Menü, darin habe viele Optionen eingebaut.
Eins Davon , bzw. mehrere davon sollten die Möglichkeit bieten eine Wahl zu treffen.
Es sollte aber Idiotensicher sein und eben die doppelte Einstellungen vorbeugen.
Es sei denn man will es gezielt.

Also funktioniert es momentan so.
In meinem Menü wird zB. gezeigt
Wert zum testen : Wert1|Wert2|Wert3

Ein Klick drauf zeigt mir eine InputBox mit 3 Combos
Ich treffe die Wahl in den Combos und mein Menü wird angepasst.
Wert zum testen : Wert2|Wert3|Wert1
Je nach getroffene Wahl.

Das steckt dahinter. natürlich arbeite ich meistens mit VCL. Einfacher, leichter aber bei 20 zu ändernden Optionen mit immer wechselnden Werten und Parametern sehe ich in der Dynamik die Lösung. Man braucht etwas, erstellt es und löscht es anschließend.
Es bedarf nur 2 functionen. Die passende Werte übergebe ich halt per StringList und schon läuft das Ganze.

Mir ist auch sehr wichtig der Lerneffekt.
Ich mag nicht wirklich Probleme zu umgehen. Ich mag Sie zu lösen.
Mag sein dass ich später es ändere und doch noch zurück rudere. Das gelernte bleibt aber im Kopf.
Schon alleine deswegen hat sich das gelohnt. :)

haentschman 12. Sep 2017 17:40

AW: 3 x ComboBox in InputBox mit Event. Bitte helfen
 
Moin...:P
Zitat:

Also funktioniert es momentan so.
In meinem Menü wird zB. gezeigt
Wert zum testen : Wert1|Wert2|Wert3

Ein Klick drauf zeigt mir eine InputBox mit 3 Combos
Ich treffe die Wahl in den Combos und mein Menü wird angepasst.
Wert zum testen : Wert2|Wert3|Wert1
Je nach getroffene Wahl.
...wenn ich die Tage Zeit habe, mache ich das gleiche, ohne WinAPI, nur mit VCL. Dann wirst du merken, wie wenig du eigentlich an Code (Zeilen) brauchst. :zwinker:


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:01 Uhr.
Seite 1 von 2  1 2      

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