AGB  ·  Datenschutz  ·  Impressum  







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

Untermenü in Combobox

Ein Thema von Oniessen · begonnen am 2. Okt 2014 · letzter Beitrag vom 4. Okt 2014
Antwort Antwort
Oniessen

Registriert seit: 17. Feb 2010
18 Beiträge
 
#1

Untermenü in Combobox

  Alt 2. Okt 2014, 14:33
Hallo!

Ich bin zwar schon par Jahre hier angemeldet, hab aber nie was geschrieben bzw. die Fragen wurden meist durch g**geln beantwortet.
Ich programmiere vor allem rein hobbymäßig und auch nur von Zeit zu Zeit.

Momentan sitze ich an einem Projekt, zur "Berechnung" bzw. Konstruktion von Sportbögen.
Ich schreibe das Ganze mit Lazarus, denke aber das macht für das Problem keinen Unterschied

Nun habe ich also folgendes Problem:
So ein moderner Bogen wird meist aus mehreren Hölzern und anderen Werkstoffen zusammen laminiert.

In einem 3-Spaltigen Stringgrid möchte ich dazu das Material per Combobox auswählen lassen, und daneben die Stärke bzw. die Verjüngung angeben lassen. Die anderen Informationen werden dann automatisch aus der entsprechenden Material-Klasse bzw. dem Record extrahiert.

Jetzt ist es aber so, das die Material Liste recht lang werden kann/wird. Zum Glück läßt sich aber das Material thematisch in Untergruppen oder Kategorien (Holzarten) z.b. Esche(Ash) aufteilen
(um mal zu schauen, wie viele es davon gibt: http://www.wood-database.com/)
Ähnlich sieht es aber auch mit Glasgewebe aus ( unidirektional, bidirektional etc. )

Darum nun meine Frage, ob jemand eine (natürlich möglichst einfache ) Möglichkeit kennt, einer Combobox bzw. dem Comboboxfeld eines Stringgrids Untermenüs beizubringen.

Eine Möglichkeit wäre sicherlich ein Popup-Menü mit der entsprechenden Zelle bzw Spalte zu verknüpfen.
Da wäre allerdings die Frage, wie stellt man es an, dieses an die Zelle anzupassen also Größe, Position zu setzen??
Auch die Frage wie ich darin mit der Tastatur navigiere stellt sich, denke ich??

Vielleicht hat auch jemand einen anderen Lösungsvorschlag???


Vielen Dank für eure ganz sicher recht zahlreiche und professionelle Hilfe,
Gruß,
Oliver
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.174 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Untermenü in Combobox

  Alt 2. Okt 2014, 14:51
Darum nun meine Frage, ob jemand eine (natürlich möglichst einfache ) Möglichkeit kennt, einer Combobox bzw. dem Comboboxfeld eines Stringgrids Untermenüs beizubringen.
Diverse Komponentensammlungen (z.B. Elpack) hätten eine passende fertige Komponente (http://lmd.de/products/vcl/lmdelpack...reenshots5.php)
Jedoch wird es diese vielfach nicht für Lazarus geben.
D.h. du musst das selbst machen. Edit mit Button nehmen. Bei Druck auf Button dynamisch ein gefülltes Tree-Control einblenden.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Untermenü in Combobox

  Alt 2. Okt 2014, 15:46
Die JVCL enthält auch eine ComboBox mit einem Baum. (TDBLookupTreeViewCombo)
Und auch von TMS gibt es etwas
http://www.tmssoftware.com/site/advtree.asp
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.174 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Untermenü in Combobox

  Alt 2. Okt 2014, 15:52
Die JVCL enthält auch eine ComboBox mit einem Baum. (TDBLookupTreeViewCombo)
Und auch von TMS gibt es etwas
http://www.tmssoftware.com/site/advtree.asp
Alle beide auch für Lazarus?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#5

AW: Untermenü in Combobox

  Alt 2. Okt 2014, 16:17
Wenn es drei Ebenen sind, kann man das auch mit drei Komboboxen machen.
1. Box: Hauptauswahl. Bei Auswahl füllt man die
2. Box: Unterauswahl. Bei Auswahl füllt man die
3. Box: Details.

Wenn in der 1.Box etwas geändert wird, löscht man natürlich die Auswahlliste der 3.Box
  Mit Zitat antworten Zitat
Oniessen

Registriert seit: 17. Feb 2010
18 Beiträge
 
#6

AW: Untermenü in Combobox

  Alt 4. Okt 2014, 07:18
Hallo!

Vielen Dank für eure Hilfe!
Ich habes im Moment erst mal so gelöst:

Die entsprechende Spalte bekommt:
ButtonStyle CBSButton und die entsprechende GridButtonClick sieht so aus bzw. fängt so an:

Delphi-Quellcode:
procedure TMainForm.MyStringGridButtonClick(Sender : TObject; aCol, aRow : Integer);
var
  TopRight :TPoint;
  PopPos : Tpoint;
begin
  TopRight.X := MyStringGrid.CellRect(aCol,aRow).Right;
  TopRight.Y := MyStringGrid.CellRect(aCol,aRow).Top;
  PopPos:= MyStringGrid.ClientToScreen(TopRight);
  PopupMenu1.PopUp(PopPos.x,PopPos.y);
end;
Das ist zwar kein 100% übliches Verhalten, aber ich denke durch den kurzen Mausweg und das direkte andocken ist das ähnlich genug, das ein Anwender sich zurecht findet.

Das sieht dann so in etwa aus:
Unbenannt.png

Eine Baumansicht bzw., einen Treeview fände ich in diesem Fall übrigens nicht so toll, da mich ja weniger der Aufbau interessiert, als vielmehr die Übersichtlichkeit - also die Möglichkeit ein bestimmtes Material schneller zu finden/auszuwählen. Darum eben eher Menü->Untermenüs...

Nochmal vielen Dank für eure Hilfe,

Gruß, Oliver
  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 08:55 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