Treeview mit Buttons
Moderator: Moderatoren
- Jan
- Marvin
- Beiträge: 14651
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Treeview mit Buttons
Hat jemand schon mal XbpPushButtons in einen Treeview eingebaut? Geht das überhaupt? Ich würde gerne 3 Buttons zu jedem Eintrag einbauen, wenn das geht.
Ich frage das prophylaktisch, bevor ich da zu viel Zeit reinstecke und dann merke, daß das alles Nonsens ist.
Jan
Ich frage das prophylaktisch, bevor ich da zu viel Zeit reinstecke und dann merke, daß das alles Nonsens ist.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Treeview mit Buttons
mir ist nicht ganz klar "wo" du "3 Buttons zu jedem Eintrag" haben willst.Jan hat geschrieben:Hat jemand schon mal XbpPushButtons in einen Treeview eingebaut? Geht das überhaupt? Ich würde gerne 3 Buttons zu jedem Eintrag einbauen, wenn das geht.
einen Node würde man ja mit :AddItem() anfügen ... sollen da 3 Button´s mit rein ?
gruss by OHR
Jimmy
Jimmy
- Jan
- Marvin
- Beiträge: 14651
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Jimmy,
genau so.
Jan
genau so.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- brandelh
- Foren-Moderator
- Beiträge: 15695
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Hi,
dann müsste man den "Node" als "Parent" angeben und für genügend Platz sorgen,
aber ob es geht ?
dann müsste man den "Node" als "Parent" angeben und für genügend Platz sorgen,
aber ob es geht ?
Gruß
Hubert
Hubert
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Treeview mit Buttons
Hi,
Object. Es gibt auch kein Hwnd für "Node", also denke ich das man keinen "Parent" zur verfügung hat.
ob es vielleicht mit ownerdraw möglich wäre, oder geht das überhaupt ?
wenn ich unter http://msdn.microsoft.com/de-de/library ... S.80).aspx das so sehe
haben wir nur die 1st Gruppe von ownerdraw fähigen Parts ? (ok ist für .NET)
aber nun mal zum "Design" der Idee ob man es nicht "anders" machen könnte ?
wie wäre den die rechte Maustaste und ein Pop-Up Menu ?
ich fürchte nein, den der "Node" ist ja kein XbPart sondern ein activexbrandelh hat geschrieben:dann müsste man den "Node" als "Parent" angeben und für genügend Platz sorgen,
aber ob es geht ?
Object. Es gibt auch kein Hwnd für "Node", also denke ich das man keinen "Parent" zur verfügung hat.
ob es vielleicht mit ownerdraw möglich wäre, oder geht das überhaupt ?
wenn ich unter http://msdn.microsoft.com/de-de/library ... S.80).aspx das so sehe
haben wir nur die 1st Gruppe von ownerdraw fähigen Parts ? (ok ist für .NET)
aber nun mal zum "Design" der Idee ob man es nicht "anders" machen könnte ?
wie wäre den die rechte Maustaste und ein Pop-Up Menu ?
gruss by OHR
Jimmy
Jimmy
- Martin Altmann
- Foren-Administrator
- Beiträge: 16509
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Nun,
man kann ja in dem Node eine Grafik anzeigen! Wenn man nun also eine Grafik mit drei Buttons malt und dann abfängt, auf welchen Bereich der Grafik geklickt wurde (erstes, zweites, drittes Drittel), weiß man, welcher Button gewählt wurde.
Wenn man das perfekt machen will, braucht man natürlich nicht eine, sondern 10 Grafiken, um alle Zustände anzeigen zu können:
Viele Grüße,
Martin
man kann ja in dem Node eine Grafik anzeigen! Wenn man nun also eine Grafik mit drei Buttons malt und dann abfängt, auf welchen Bereich der Grafik geklickt wurde (erstes, zweites, drittes Drittel), weiß man, welcher Button gewählt wurde.
Wenn man das perfekt machen will, braucht man natürlich nicht eine, sondern 10 Grafiken, um alle Zustände anzeigen zu können:
- Kein "Knopf" ist eingedrückt/markiert.
- Maus schwebt über dem linken "Knopf"
- Maus schwebt über dem mittleren "Knopf"
- Maus schwebt über dem rechten "Knopf"
- Maus drückt auf den linken "Knopf"
- Maus drückt auf den mittleren "Knopf"
- Maus drückt auf den rechten "Knopf"
- Der linke "Knopf" ist markiert (hat den Fokus)
- Der mittlere "Knopf" ist markiert (hat den Fokus)
- Der rechte "Knopf" ist markiert (hat den Fokus)
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Jan
- Marvin
- Beiträge: 14651
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Moin Leute,
Danke für all die Gedanken, die Ihr eingeworfen habt. Und die leider meine Befürchtungen bestätigt haben. Nur ein paar Anmerkungen dazu:
- XbpTreeView kann kein Ownerdrawing, Till will sich das aber mal ansehen, wie aufwändig das ist.
- Mit Grafiken geht schlecht. Denn wie ist das da mit Themes? Und ich bräuchte ja noch 3 Bilder für hover.
- Klar, Diego ist da ein Ass drin, den Treeview zu verbiegen. Ich bin mit seinen Beispielen aber nie wirklich klargekommen. Und Buttons hat er glaube ich noch nicht umgesetzt.
Ich denke ich muß das anders machen. Das ich über den :marked-Slot einen kleinen Bereich daneben aufbaue mit ein wenig Detailinfos zu dem jeweiligen Eintrag und den 3 Buttons. Mal schauen, wie das aussieht. Und ob das von der Handhabung her für den User praktikabel ist.
Jan
Danke für all die Gedanken, die Ihr eingeworfen habt. Und die leider meine Befürchtungen bestätigt haben. Nur ein paar Anmerkungen dazu:
- XbpTreeView kann kein Ownerdrawing, Till will sich das aber mal ansehen, wie aufwändig das ist.
- Mit Grafiken geht schlecht. Denn wie ist das da mit Themes? Und ich bräuchte ja noch 3 Bilder für hover.
- Klar, Diego ist da ein Ass drin, den Treeview zu verbiegen. Ich bin mit seinen Beispielen aber nie wirklich klargekommen. Und Buttons hat er glaube ich noch nicht umgesetzt.
Ich denke ich muß das anders machen. Das ich über den :marked-Slot einen kleinen Bereich daneben aufbaue mit ein wenig Detailinfos zu dem jeweiligen Eintrag und den 3 Buttons. Mal schauen, wie das aussieht. Und ob das von der Handhabung her für den User praktikabel ist.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Treeview mit Buttons
ich denke es geht nicht mit MsComCtl.OCX v6.xJan hat geschrieben:- XbpTreeView kann kein Ownerdrawing, Till will sich das aber mal ansehen, wie aufwändig das ist.
Theme passt auch nicht mit v6.xJan hat geschrieben:- Mit Grafiken geht schlecht. Denn wie ist das da mit Themes?
Also nun ...Jan hat geschrieben:Und ich bräuchte ja noch 3 Bilder für hover.
ich habe auch nichts in meiner Sammelung gefunden, aber Diego hat eine Treeview Class.Jan hat geschrieben:- Klar, Diego ist da ein Ass drin, den Treeview zu verbiegen. Ich bin mit seinen Beispielen aber nie wirklich klargekommen. Und Buttons hat er glaube ich noch nicht umgesetzt.
also ich komme mir immer noch vor wie mit den 3 Muscheln ... ich weiss immer noch nicht was ich 3 Button´s machen sollen ?Jan hat geschrieben:mit ein wenig Detailinfos zu dem jeweiligen Eintrag und den 3 Buttons.
Auswahl -> Pop-Up Menu
Info -> Tooltip ?
gruss by OHR
Jimmy
Jimmy
- Martin Altmann
- Foren-Administrator
- Beiträge: 16509
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Hallo Jan,
Diego hat das mit einer Checkbox gemacht - und die ist eine Grafik (so weit ich mich erinnere)!
Aber was soll das überhaupt bringen? Was willst Du erreichen? Ich glaube nicht, dass das Treeview das "richtige" Control für Deinen Wunsch ist...
Viele Grüße,
Martin
Diego hat das mit einer Checkbox gemacht - und die ist eine Grafik (so weit ich mich erinnere)!
Aber was soll das überhaupt bringen? Was willst Du erreichen? Ich glaube nicht, dass das Treeview das "richtige" Control für Deinen Wunsch ist...
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Jan
- Marvin
- Beiträge: 14651
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Moin Jimmy und Martin,
der Treeview ist schon das richtige Element für mich. Der passt perfekt zu dem, was ich anzeigen möchte. Ich stelle nur das komplette Programm im Moment auf eine etwas flexiblere Bedienung um. Und habe durchgängig hinter nahezu allen Angaben 3 Buttons, um 3 überall gleiche Aktionen auszuführen zu können. Und damit das überall gleich ist (der User soll halt überall das gleiche Bedienkonzept haben), möchte ich diese 3 Buttons auch zu jedem Eintrag im Treeview anbieten. Von daher sind die ansich korrekten Ideen mit einem Kontextmenü usw. zwar eigentlich richtig, passen in diesem speziellen Fall aber leider nicht wegen der fehlenden Durchgängigkeit. Auch eine über das ganze Programm bestehende Toolbar mit den passenden Funktionen würde mir nicht weiterhelfen, weil das in diesem speziellen Fall schlichtweg zu kompliziert zu bedienen ist.
Jan
der Treeview ist schon das richtige Element für mich. Der passt perfekt zu dem, was ich anzeigen möchte. Ich stelle nur das komplette Programm im Moment auf eine etwas flexiblere Bedienung um. Und habe durchgängig hinter nahezu allen Angaben 3 Buttons, um 3 überall gleiche Aktionen auszuführen zu können. Und damit das überall gleich ist (der User soll halt überall das gleiche Bedienkonzept haben), möchte ich diese 3 Buttons auch zu jedem Eintrag im Treeview anbieten. Von daher sind die ansich korrekten Ideen mit einem Kontextmenü usw. zwar eigentlich richtig, passen in diesem speziellen Fall aber leider nicht wegen der fehlenden Durchgängigkeit. Auch eine über das ganze Programm bestehende Toolbar mit den passenden Funktionen würde mir nicht weiterhelfen, weil das in diesem speziellen Fall schlichtweg zu kompliziert zu bedienen ist.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Treeview mit Buttons
meinst du CheckTV ?Martin Altmann hat geschrieben:Diego hat das mit einer Checkbox gemacht - und die ist eine Grafik (so weit ich mich erinnere)!
die Checkboxes ist eine Property* vom MsComCtl.OCX auf dem ja das XbpTreeview() basiert,
aber es wird uns von Alaska ja nicht angeboten ...*http://msdn.microsoft.com/de-de/library ... S.80).aspx
wenn man nun .NET benutzen würde ... so aber muss man sich mit dem begnügen was man hat.
ich denke da an die TreeNode.Tag-Eigenschaft, sowas wie :cargo, ob man da einen Codeblock
ablegen könnte.
Ich habe mir mal Diego´s Treeview Class angesehen und denke seine "Taktik" zu erkennen:
mit :itemMarked := {| oItem, aRect, self | ... } muss identifiziert werden welches gerade den
"Focus" hat und seine Rechteck Masse des Item = Node. mit :lbDblClick hätte ich dann das
:itemSelected(), aber das :lbDown ist noch "frei" !
man hätte also den Node, das XbpTreeViewItem-Objekt, das markiert wurde und man hätte die
:Tag Property des Object ...
eine andere Idee geht Richtung Thread und Pop-up. du übergibts die :itemMarked Parameter im
Codeblock an einen Thread ala Tooltip. Im Thread müsste du dann zusehen das ein Pop-up "auf"
oder "neben" dem NodeItem erscheint was deine 3 Button´s enthält.
Ich "denke" das du wohl möglich per Keyboard die 3 Button´s bedienen kannst, also würde ich
den Thread mit einer verzögerrung :Starttime := SECONDS()+0.1 starten damit bei navigieren
mit dem Cursor nicht immer was "aufpoppt".
gruss by OHR
Jimmy
Jimmy
- Martin Altmann
- Foren-Administrator
- Beiträge: 16509
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Hallo Jimmy,
Viele Grüße,
Martin
yup.AUGE_OHR hat geschrieben:meinst du CheckTV ?
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Jan
- Marvin
- Beiträge: 14651
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Ich habe von Diego auch noch den mit farbigen Einträgen und den mit Drag and Drop-Funktionalität. Den mit den Farben hatte ich mal ausprobiert, weil das sehr gut zu dem Projekt passte. Hab das aber leider nie wirklich ans Laufen bekommen.
Jan
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Treeview mit Buttons
Das sollte leicht sein, den Node hat ja die Property BackColor und ForeColor aber das sagt uns Alaska ja nicht probiere doch malJan hat geschrieben:Den mit den Farben hatte ich mal ausprobiert, weil das sehr gut zu dem Projekt passte. Hab das aber leider nie wirklich ans Laufen bekommen.
Code: Alles auswählen
oNode:setProperty('ForeColor',AutomationTranslateColor( GRA_CLR_WHITE,.f.))
oNode:setProperty('BackColor',AutomationTranslateColor( GraMakeRGBColor({031,153,255}),.f.))
gruss by OHR
Jimmy
Jimmy
- Jan
- Marvin
- Beiträge: 14651
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Leider funktioniert das nicht, da :setProperty() unter Xbase++ nicht vom Treeview unterstützt wird.AUGE_OHR hat geschrieben:probiere doch malCode: Alles auswählen
oNode:setProperty('ForeColor',AutomationTranslateColor( GRA_CLR_WHITE,.f.)) oNode:setProperty('BackColor',AutomationTranslateColor( GraMakeRGBColor({031,153,255}),.f.))
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Treeview mit Buttons
mal mit dem XbpTreeViewItem() versucht, den das ist der Node (nicht den Tree)Jan hat geschrieben:Leider funktioniert das nicht, da :setProperty() unter Xbase++ nicht vom Treeview unterstützt wird.
gruss by OHR
Jimmy
Jimmy
- Jan
- Marvin
- Beiträge: 14651
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Jimmy,
ist schon klar. Aber wie gesagt: Das geht nicht!
Jan
ist schon klar. Aber wie gesagt: Das geht nicht!
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- AUGE_OHR
- Marvin
- Beiträge: 12906
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Treeview mit Buttons
hi,
Ich greife zwar direkt auf MsComCtl.OCX zu, aber auch die XbpTreeView() Class muss die Nodes Property haben.
über die Item Property von Nodes kommst du dann zum Node und da geht es dann
Es muss gehen.Jan hat geschrieben:ist schon klar. Aber wie gesagt: Das geht nicht!
Ich greife zwar direkt auf MsComCtl.OCX zu, aber auch die XbpTreeView() Class muss die Nodes Property haben.
über die Item Property von Nodes kommst du dann zum Node und da geht es dann
gruss by OHR
Jimmy
Jimmy
- Jan
- Marvin
- Beiträge: 14651
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Treeview mit Buttons
Wenn Du das sagst. Gib mir den Weg vor, und ich setze das sofort um.AUGE_OHR hat geschrieben:Es muss gehen.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Re: Treeview mit Buttons
Hallo,
hat jemand den Code von Diegos Beispiel mit farbigen Treeviewitem?
Könnte diesen gebrauchen
IJ