Delphi-PRAXiS
Seite 2 von 5     12 34     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Delphi Datenformular Oberfläche (https://www.delphipraxis.net/170867-datenformular-oberflaeche.html)

himitsu 7. Okt 2012 17:16

AW: Datenformular Oberfläche
 
Eventuell könnte es mit 2 Listen übersichtlicher sein.

Eine Liste, wo alle Türen drinstehn, welche mit der Karte verknüpft sind
und dann gibt es eine Liste, wo alle Türen drinstehn (eventuell noch gruppiert nach Etage oder Dergleichen) und dazu noch ein Edit, wo man einen Filter (Bestandteil des Namens) angeben kann.

Sir Rufo 7. Okt 2012 17:35

AW: Datenformular Oberfläche
 
Zitat:

Zitat von himitsu (Beitrag 1186125)
Eventuell könnte es mit 2 Listen übersichtlicher sein.

Eine Liste, wo alle Türen drinstehn, welche mit der Karte verknüpft sind
und dann gibt es eine Liste, wo alle Türen drinstehn (eventuell noch gruppiert nach Etage oder Dergleichen) und dazu noch ein Edit, wo man einen Filter (Bestandteil des Namens) angeben kann.

Also wenn es so um die 1000 Türen/Karten gibt, dann ist eine Eingabe über Listen doch sehr unübersichtlich und eine Darstellung per Grid durchaus angebracht.
Dabei würde ich die Türen im Grid bezogen zur Etage darstellen. Also in einer Zeile sind nur Türen aus der gleichen Etage.
In der Zelle die Tür-Nummer und wenn sich die Maus über einer Zelle befindet würde ich noch erweiterte Informationen zu der Tür (was ist denn dahinter) anzeigen lassen.
Mit dem DrawGrid ist es ja kein Problem da mit Grafiken und Farben zu arbeiten um das sehr übersichtlich zu gestalten.

himitsu 7. Okt 2012 17:51

AW: Datenformular Oberfläche
 
Man kann es auch noch kombinieren.
- in der Liste steht alles
- und im Grid z.B. je eine Etage (das könnte man noch weitertreiben und einen Grundriß anbieten, wo man die Türen darin auswählt)

VkPenguin 7. Okt 2012 17:53

AW: Datenformular Oberfläche
 
@Himitsu/Sir Rufo: Das sind eigentlich nette Ideen, danke, aber die Oberfläche ist so leider ausdrücklich gewünscht wie ich sie beschrieben hab (aus praktischen Gründen, um das zu erklären müsste ich weit ausholen, spielt aber ja eigentlich auch keine Rolle). Ich denke aber, wie SirRufo schon sagte, dass man mit einer StringGrid/DrawGrid gut zurecht kommen kann(Wenn man sich denn damit auskennt... ;-) ), nur finde ich (bisher zumindest) keine brauchbare Möglichkeit, die Selektierten Zellen einer Stringgrid zu verändern.

Folgendes wäre ja schon ausreichend (Wobei sich eine Drawgrid aufgrund der Übersichtlichkeit wohl doch besser eignen würde):
Delphi-Quellcode:
*Pseudocode*
For X:=1 To Stringgrid.ColCount Do
 Begin
 For Y:=1 To Stringgrid.RowCount do
  Begin
  If Stringgrid[X,Y].Selected then if Stringgrid[X,Y]='True' then Stringgrid[X,Y]='False' else Striggrid[X,Y]='True';
 End;
End;
Also wenn das Event per Tastendruck ausgelöst wird, tauscht die Procedur den Wert aller makierten Zellen aus. Stringgrid[X,Y].Selected gibt es aber ja scheinbar nicht. Ich habe zwar DAS finden können, aber in meinem Programm sollen ja mehrere Zellen gleichzeitig selektierbar sein

@SirRufo: Das mit den Informationen ist übrigens eine tolle Idee, wäre das vielleicht mit den Hints möglich? Dann könnte man theoretisch doch auch zu den Angaben (Name, Zimmernummer, Bettenanzahl etc.) kommen, wenn man auf eine Zeile doppelklickt, oder?

Gibt es denn irgendwo eine Übersicht über die Grids? DIESE ist zwar für den Anfang nicht schlecht, aber viele Informationen fehlen mir dabei...

sx2008 7. Okt 2012 17:58

AW: Datenformular Oberfläche
 
Also ich denke hier fehlt eine zusätzliche Ebene.
Zum Beispiel sollte es möglich sein die Räume in Gruppen zu ordnen.
Es gibt dann z.B. Technikräume, Personalräume, Sicherheitsbereiche, Geschäftführung,
Gästezimmer 1.Stock, Gästezimmer 2.Stock, ...

Das Gleiche kann man auch mit den Karten machen.
Es gibt Standardkarten, Mitarbeiterkarten, Masterkarten, ...

Dann braucht man nur noch definieren:
Masterkarten dürfen in alle Räume ausser in die Räume der Geschäftführung.
Mitarbeiterkarten dürfen in die Personalräume.
...

Jede Karte jedem einzelnen Raum zuzuorden ist viel zu kompliziert.
Mit den Gruppen wird das erteilen oder entziehen von Zutrittsrechten stark vereinfacht.

VkPenguin 7. Okt 2012 18:20

AW: Datenformular Oberfläche
 
Wie gesagt, ich verstehe die Idee dahinter und danke Euch für den Tipp, aber das steht leider nicht zur Diskussion. Danke aber aufjedenfall auch nocheinmal für die Anregung, Grids zu verwenden. Ich wünschte nur, die hätten eine so einfach verständliche API wie Excel, dann wäre ich schon fertig :)

sx2008 7. Okt 2012 18:29

AW: Datenformular Oberfläche
 
Zitat:

Zitat von VkPenguin (Beitrag 1186133)
, aber das steht leider nicht zur Diskussion.

Nun ja - Kunden, die Software bestellen sind manchmal stur und unwissend.
Das was sie wollen ist nicht das was sie brauchen!!
Wenn man als Softwareentwickler nicht versucht den Kunden von einer besseren Lösung zu überzeugen, dann wird die Software eben nicht wirklich erfolgreich sein.
Denn meistens ist der Besteller <> der Benutzer.
Aber manchmal muss man den Kunden zu seinem Glück zwingen.

Wenn nicht zur Diskussion steht, wie eine Software sein Ziel erreichen soll, dann läuft etwas ganz arg schief!

VkPenguin 7. Okt 2012 18:51

AW: Datenformular Oberfläche
 
Nein nein, so war das gar nicht gemeint. Es gibt Gründe, warum die Oberfläche in diesem Fall so sein muss und nicht in Etagen unterteilt werden kann. Nur die im Kontext auszuführen würde recht lange dauern und spielt ja auch eigentlich keine Rolle, glaubt mir einfach, dass es dafür einen Grund gibt. Zu euch kam ich ja, weil ich auf der Suche nach Tipps bin, wie ich das als unerfahrener Delphianer hinkriege. Immerhin, ein bisschen bin ich ja schon weitergekommen: Ich glaube, der Ausdruck, den ich suche, um die selektierten Zellen zu erfassen ist ähnlich wie "state = [gdSelected]".

Hobby-Programmierer 7. Okt 2012 19:04

AW: Datenformular Oberfläche
 
Hallo ...,
ne kleine Lektüre für zwischendurch :wink:
http://www.ansatheus.de/_at_dokserve...stringgrid.pdf
oder aber gleich
https://www.google.de/search?hl=de&c...LM334QTzyoDABw

VkPenguin 7. Okt 2012 19:21

AW: Datenformular Oberfläche
 
Danke Dir :) Auf den "Seiten" war ich zwar schon, hatte aber nach "gdSelected" gesucht, was dort nicht auftauchte. Aber ein anderes Beispiel hats ja auch getan. Allerdings steht diese Abfrage bei mir ja nicht in OnDrawCell. Das war meine erste Lösung, aber die funktionierte nur, wenn ich Enter gedrückt halte, während ich die Zelle selektiere. Es kann aber ja auch sein, dass ich erst zwei Sekunden, nachdem ich die Zelle selektiert habe, Enter drücke. Trotzdem soll die Zelle dann entsprechend eingefärbt werden. Aber wenn ich innerhalb des OnKeyPress Events nach gdSelected frage, muss ich ja erstmal an den State der jeweiligen Zelle kommen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:49 Uhr.
Seite 2 von 5     12 34     Letzte »    

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