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/)
-   -   Delphi DevExpress: Cell Focus verhindern unter bestimmten Bedingungen (https://www.delphipraxis.net/200883-devexpress-cell-focus-verhindern-unter-bestimmten-bedingungen.html)

haentschman 4. Jun 2019 08:28


DevExpress: Cell Focus verhindern unter bestimmten Bedingungen
 
Liste der Anhänge anzeigen (Anzahl: 2)
Moin...8-)
Persönlich mag ich die ImGrid Editiererei nicht. Da stößt man auf Probleme die man sich nicht vorstellen kann. :stupid: Wenn man nur den Standard macht mit alles "offen", dann ist das unproblematisch. Dann kommen die quänglichen User...Ich will ein Eis! :stupid:

Vorgabe:
* Grid
* Positionen Grid mit "Detaildaten"
* Zugriff auf das Objekt in der Objektliste des Records für das Lesen der Properies

* Grid hat eine Spalte ("Prüfung erledigt") editierbar. (3) Dieses Flag ist die Vorraussetzung für das "Erzeugen" der eigentlichen Rechnung. (2)
* ist die Rechnung "erzeugt (gespeichert) wird "Rechnung gespeichert" eingetragen. (1)

Was soll passieren:
* die eine focusierte Zelle ("Prüfung erledigt") der Spalte, mit Flag "gespeichert", soll nicht editierbar sein.
* das Positionen Grid soll in Abhängigkeit des Flags ("Prüfung erledigt") editierbar sein

Was passiert:
Wenn ich dem Record, über das Flag, den Focus entziehe, dann ist die Funktion wie ich sie möchte gegeben. Aber die Selection ist auch weg. :? Der Indikator hat keinen Pfeil und der Record ist nicht markiert. Beim Klick auf das Grid werden die Positionen anstandslos geladen/aktualisiert.
Probiert habe ich nicht das eigentliche Editieren zu verhindern (Validate).

Soll:
Ich möchte eine Markierung auf dem aktuellen DS sehen...vorzugsweise mit Pfeil (die User sind das gewohnt) und ein Selection Rahmen. :thumb:


Danke für Infos...

PS: Die Grids sind keine Grids mit Dataset Anbindung! An den Grids hängen generische Objektlisten. :thumb:

Hinweis: Ich habe schon die mir bekannten üblichen Verdächtigen Events (FocusRecord etc.) durch.
Hinweis2: CanSelectRecord wird nicht ausgeführt! :gruebel: MultiSelect = False? :gruebel:

Nachtrag: MultiSelect = False ist der Übeltäter für das nicht Ausführen von CanSelectRecord

uligerhardt 4. Jun 2019 09:09

AW: DevExpress: Cell Focus verhindern unter bestimmten Bedingungen
 
Ich hab jetzt dein Szenario nicht wirklich verstanden, aber reicht es nicht, für die relevante Zelle in einem TableView.OnEditing-Handler AAllow auf False zu setzen?

haentschman 4. Jun 2019 10:08

AW: DevExpress: Cell Focus verhindern unter bestimmten Bedingungen
 
Zitat:

aber reicht es nicht, für die relevante Zelle in einem TableView.OnEditing-Handler AAllow auf False zu setzen
Das ist richtig...:wink:
Ich wollte aber einen optischen Unterschied haben, um zu erkennen warum das nicht editierbar ist. Mit Allow := False klickst du und kannst nicht erkennen, warum die CheckBox sich nicht ändert. ...weil der Hintergrund der Checkbox Zelle immer noch im "EditModus" steht (Column.Focus erlaubt).
:wink:

uligerhardt 4. Jun 2019 10:10

AW: DevExpress: Cell Focus verhindern unter bestimmten Bedingungen
 
Zitat:

Zitat von haentschman (Beitrag 1433816)
Zitat:

aber reicht es nicht, für die relevante Zelle in einem TableView.OnEditing-Handler AAllow auf False zu setzen
Das ist richtig...:wink:
Ich wollte aber einen optischen Unterschied haben, um zu erkennen warum das nicht editierbar ist. Mit Allow := False klickst du und kannst nicht erkennen, warum die CheckBox sich nicht ändert.
:wink:

Dann weist du in einem OnGetContentStyle-Handler einen passenden cxStyle zu. 8-)

haentschman 4. Jun 2019 10:12

AW: DevExpress: Cell Focus verhindern unter bestimmten Bedingungen
 
Zitat:

Dann weist du in einem OnGetContentStyle-Handler einen passenden cxStyle zu.
...da bin ich grad dabei. :wink:

uligerhardt 4. Jun 2019 10:16

AW: DevExpress: Cell Focus verhindern unter bestimmten Bedingungen
 
Wenn's richtig disabled ausschauen soll, sollte das helfen:
https://www.devexpress.com/Support/C...sable-checkbox

haentschman 4. Jun 2019 10:18

AW: DevExpress: Cell Focus verhindern unter bestimmten Bedingungen
 
Zitat:

Wenn's richtig disabled ausschauen soll
...gute Idee. :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:01 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz