Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   livebindings mehrere sources (https://www.delphipraxis.net/204605-livebindings-mehrere-sources.html)

noisy_master 10. Jun 2020 15:19

livebindings mehrere sources
 
Hallo liebe Gemeinde,

ich bin endlich mal dazu gekommen mit livebindings rumzuspielen und habe ein Frage:

ist es mit den livebindings möglich meherere Controls als source zu nutzen?
Kleines Beispiel um das die Frage klarer zu machen: form mit einem edit und 2 checkboxen und das edit soll die eigenschaft visible auf true gesetzt bekommen wenn BEIDE checkboxen angeclickt sind, folgerichtig soll das edit unsichtbar sein wenn nur eine der beiden checkboxen oder gar keine angeklickt sind.

Direkt im Quellcode ist das natürlich simpel, aber die Frage ist: geht das mit livebindings? Und wenn ja: wie?

Danke schon mal vorab für eure Antworten.

P.S.: kleine Nebenfrage: funktionieren livebindings eigentlich auch mit feldern von records?

himitsu 10. Jun 2020 15:31

AW: livebindings mehrere sources
 
Ich weiß nicht mehr wie das ging, damals als die ersten LiveBindings vorgestellt wurden,
da hatte jemand ein Scripting dort integriert/benutzt und als Demo einen Taschenrechner nur aus LiveBindings gebaut.

ODER ist blöd.
Willst'e nicht lieder ein UND machen?
Zwei Panels ineinander und jeweils Eines mit Visible an einer CheckBox. :stupid:

noisy_master 10. Jun 2020 15:55

AW: livebindings mehrere sources
 
Zitat:

Zitat von himitsu (Beitrag 1466981)
Ich weiß nicht mehr wie das ging, damals als die ersten LiveBindings vorgestellt wurden,
da hatte jemand ein Scripting dort integriert/benutzt und als Demo einen Taschenrechner nur aus LiveBindings gebaut.

ist nicht schlimm, aber schön wäre, wenn du mir sagen könntest, wo ich diese "Taschenrechner-Livebinding-Demo finden könnte :-D

Zitat:

Zitat von himitsu (Beitrag 1466981)
ODER ist blöd.
Willst'e nicht lieder ein UND machen?
Zwei Panels ineinander und jeweils Eines mit Visible an einer CheckBox. :stupid:

bezieht sich das auf meinen Post?

himitsu 10. Jun 2020 16:02

AW: livebindings mehrere sources
 
Würde ich gern. Suche es schon seit Jahren, aber find es nicht (fand es zu cool ... hab gehofft jemand erinnert sich und verlinkt die hier :angle:).

So wie ich auch ständig vergesse wo die geile Demo vom Turbo Delphi zu finden war. (Doom, oder welches Spiel dort als uralter Quellcode für die damals noch existierende super abwärtskompatibilität des Compilers diente)


Jupp, Deiner.
Grad nochmal durchgelesen ... du meinstest ja doch UND (verles..falschverstanden), dann geht es ja doch. :D

noisy_master 10. Jun 2020 20:36

AW: livebindings mehrere sources
 
Heureka!

ihr habt mich auf die richtige Spur geführt:

es ist recht einfach: man braucht eine BindingExpression, controlcomponent wird das edit,controlexpression ist das visible, sourcecomponent ist eine der checkboxen(oder jedes andere beliebige control auf der Form) und jetz kommt der trick:sourceexpression ist die folgende:
IfAll(Self.owner.checkbox1.checked,self.owner.chec kbox2.checked)

Danke nochmal!!!!

So nebenbei: ich glaube der mit dem Taschenrechner war Daniele Teti auf der ITDevCon 2011/2012:
http://www.danieleteti.it/in-the-cor...tudio-xe2.html
und hier:
https://www.google.de/url?sa=t&rct=j...BfoN9U9K4NzTBv

Rollo62 11. Jun 2020 08:14

AW: livebindings mehrere sources
 
Dies hier ist vielleicht auch interessant.
Meine Meinung ist, ich würde LB generell per Code einsetzen, und nicht pder Designer produktiv einsetzen.
Mit einem unübersichtlichen LB-Designer, der sich auch mal ändern könnte und dein Projekt komplett zerschiessen könnte.

Der LB-Designer als Einstieg und zum Beispiel auch um zu sehen wie der Designer es dann im Code anlegt,
das hilft schon enorm.

Per Code funktioniert LB aber ganz gut, wenn man keine zu hohen Erwartungen hat.
Also ich meine damit die LB-Komponenten selbst verwalten und verbinden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:22 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