Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Normale Anwendung in MDI wandeln? (https://www.delphipraxis.net/93865-normale-anwendung-mdi-wandeln.html)

moelski 12. Jun 2007 14:23


Normale Anwendung in MDI wandeln?
 
Moin !

Wir haben derzeit eine Anwendung mit mehreren Panels. Jedes Panel stellt eine bestimmt Ansicht und bis dato gab es keinen Grund warum man mehrere Panels gleichzeitig sehen sollte. Drum werden einfach die Panels passend in den Vordergrund gelegt.

Nun möchten wir aber die Anwendung umstellen auf MDI. Kann das zu grösseren Problemen führen wenn wir den Inhalt der Panels in ein MDI Child Formular packen? Muss man dabei was besonderes beachten?
Ich habe leider noch nicht so viele Erfahrungen gemacht mit MDI und möchte einfach grössere Stolperstellen vermeiden bei der Umstelung ...

Phoenix 12. Jun 2007 14:35

Re: Normale Anwendung in MDI wandeln?
 
Warum wollt ihr auf MDI umstellen, wenn alle von MDI weg gehen?

Nur so als Hauptargument: Office ist kein MDI mehr (war damals der Vorreiter). User fühlen sich bei MDI-Anwendungen unwohl. Sie sind eingeengt (in der Hauptanwendung) und die Bedienung ist ungeschickt.

Zitat:

Zitat von Wikipedia
Der Sinn des Multiple Document Interface war ursprünglich, die Arbeit an mehreren Dokumenten zu erlauben, ohne dafür das Programm mehrfach starten zu müssen. Da sich jedoch die Unterfenster als recht unübersichtlich erwiesen, werden in modernen Programmen vor allem zwei alternative Wege beschritten:
  • Beim Single Document Interface (SDI) erhält jedes Dokument ein eigenes Hauptfenster
  • Beim Tabbed Document Interface sind die Unterfenster nicht frei platzierbar, sondern in so genannten Registerkarten organisiert

Ich würde vorab - bevor ihr anfangt ernsthaft über MDI nachzudenken - beide Alternativen ausprobieren.

moelski 12. Jun 2007 14:48

Re: Normale Anwendung in MDI wandeln?
 
Moin Phoenix!

Hmm auch wenn ich auf diese Diskussion nicht hinaus wollte (wir haben schon Stunden damit verbracht) kann ich ja mal kurz schreiben was uns dazu bewegt hat diese Überlegung anzugehen ...

Wir ham derzeit ein Hauptfenster und abgesehen von den Reitern haben wir ein Tabbed Document Interface. Alles liegt also mehr oder minder übereinander. Das ist im Moment noch nicht so schlimm, denn wir haben (vereinfacht) eine Tabelle und eine Grafik. Man kann zwischen denen hin und herschalten und gut.
Nun möchten wir aber mehrere Geräte gleichzeitig supporten. Nun kommt man aber mit Tabbed in Schwulitäten. Das würde bedeuten das nochmehr "gestapelt" wird und der User mit einer ganzen Menge von übereinanderliegenden Fenstern erschlagen wird.

SDI ... Nuja kein so schlechter Ansatz. Aber das gelbe vom Ei iss das auch nicht. Man hat eben nicht mehr alles zusammen. Das kann man als Vor- und Nachteil sehen - klar. Ich könnte mir aber vorstellen das dieses Konzept einige User verwirrt.

Insgesamt sind wir mit MDI auch nicht 100% glücklich. Und ehrlich gesagt haben wir lange lange diskutiert wie denn die neue Oberfläche werden soll.

bernau 12. Jun 2007 15:02

Re: Normale Anwendung in MDI wandeln?
 
Zitat:

Zitat von Phoenix
Warum wollt ihr auf MDI umstellen, wenn alle von MDI weg gehen?

Ist das so? Ich sehe im Augenblick wieder einen Trend Richtung MDI.

Bestes Beispiel: Tabbed-Browsing. Opera hat mit seinem Browser damit angefangen. Und es lässt sich so gut anwenden, daß viele es nachmachen. Und selbst Microsoft hat es in seinem neuen Explorer wieder drin. Es bringt ein Gefühl von Zusammengehörigkeit der Fenster eines Programms.

Man muss aber auch sagen, daß MDI einfach nicht zu jedem Programm passt. Für manche ist es vorteilhaft, für andere Programme wierum nicht.

OregonGhost 12. Jun 2007 15:14

Re: Normale Anwendung in MDI wandeln?
 
Zitat:

Bestes Beispiel: Tabbed-Browsing. Opera hat mit seinem Browser damit angefangen. Und es lässt sich so gut anwenden, daß viele es nachmachen. Und selbst Microsoft hat es in seinem neuen Explorer wieder drin. Es bringt ein Gefühl von Zusammengehörigkeit der Fenster eines Programms.
Wie in dem von Phoenix zitierten Wikipedia-Ausschnitt beschrieben handelt es sich bei dem Tabbed-Interface, das diverse aktuelle Browser verwenden, NICHT um MDI. MDI ist in der Tat mehr oder weniger out.

@topic:
Habt ihr darüber nachgedacht, eure Panels einfach andockbar zu machen? Ich kann mir unter deiner Beschreibung ehrlich gesagt nichts genaues vorstellen. Eventuell ist der Ansatz nicht ganz richtig - geht es nur darum, zwischen verschiedenen Ansichten derselben Datei umschalten zu können? Je nach Situation kann dann ein Tab pro Datei und Ansicht auch interessant sein, z.B. Visual Studio 2005 macht das normalerweise so (Quelltext und Formulardesigner sind separate Tabs). Alternativ kann man statt Tabs auch andere Mechanismen verwenden, um zwischen Ansichten umzuschalten, um dann einen Tab pro Datei zu verwenden.
Office 2003 (weiß gar nicht, wie das bei 2007 ist) verwendet den MTI-Ansatz (Multiple Top-Level Windows Interface), bei dem für jedes Dokument ein Hauptfenster geöffnet wird, das dann wiederum unterschiedliche Ansichten bereitstellen kann. Das unterscheidet sich insofern von SDI, als dass man trotzdem mehrere Dokumente in einer Programminstanz öffnen kann. Die Umschaltung zwischen Dokumenten erfolgt dann entweder über das von MDI bekannte Fenster-Menü oder über die Taskleiste.

Phoenix 12. Jun 2007 15:19

Re: Normale Anwendung in MDI wandeln?
 
Zitat:

Zitat von bernau
Zitat:

Zitat von Phoenix
Warum wollt ihr auf MDI umstellen, wenn alle von MDI weg gehen?

Ist das so? Ich sehe im Augenblick wieder einen Trend Richtung MDI.

Guckst Du Wikipedia-Eintrag ;-)
Tabbed ist nicht wirklich MDI, weil dennoch nur ein Fenster sichtbar ist, welches nicht frei platzierbar innerhalb der Anwendung ist.

Zitat:

Zitat von moelsi
Man kann zwischen denen hin und herschalten und gut.
Nun möchten wir aber mehrere Geräte gleichzeitig supporten. Nun kommt man aber mit Tabbed in Schwulitäten. Das würde bedeuten das nochmehr "gestapelt" wird und der User mit einer ganzen Menge von übereinanderliegenden Fenstern erschlagen wird.

Wenn die Fenster im Tab aufgeräumt sind, ist das noch okay. Stell Dir mal vor, der hätte so viele Fenster gleichzeitig offen die sich teilweise überlappen, klickt irgendwohin, dann liegt wieder ein anders Fenster halb drüber das er nicht wieder einzeln nach hinten bekommt ohne ein anders Fenster zu verdecken... Furchtbar. Echtes MDI ist ab > 7 Fenstern nicht mehr zu bewältigen.

Oder kurz gesagt: Ihr nehmt dem User den sortierten Papierstapel aus der Hand und verteilt alle Blätter wild auf dem Tisch und der User soll damit klarkommen.

Ihr habt Panels, die ihr auf einen beliebigen Parent klatschen könnt. Versucht doch mal, mehrere Panels gleichmässig auf ein größeres zu packen, dass ihr dann anzeigt. So Fliesenmässig. Sucht mal, ob ihr Webseiten findet die ähnliche Informationsblöcke anzeigen (Statistiken?) und schaut da nochmal durch. Wie gesagt: Ich würde ein echtes MDI wenn irgend möglich aus Usability-Gründen vermeiden wollen.

moelski 12. Jun 2007 15:23

Re: Normale Anwendung in MDI wandeln?
 
Moin !

Zitat:

Ich kann mir unter deiner Beschreibung ehrlich gesagt nichts genaues vorstellen
Also es ist so ...
Du hast ein serielles Gerät was Daten zum PC sendet. Diese Daten werden in verschiedenen Ansichten Aufbereitet. Tabelle, Grafik und auch die zuletzt reingekommenene Werte als Analoganzeigen. Hier mal ein paar Screens: http://www.logview.info/joomla/index...=11&Itemid=112

Wenn man nun zwei Geräte abfragen will und z.B. die beiden Grafiken sehen will kommt man eben mit dem aktuellen Konzept nicht weiter.
Da wäre MDI nicht übel. Weil dort könnte man sich die Fenster so hinbiegen wie man mag und auch die Fenster die man gerne sehen will.

MTI halte ich nicht für so sinnvoll. Die Taskleiste müllt sich zu und übersichtlicher wirds auch nicht wirklich. Und wenn man 2 Sachen parallel sehen will hat man auch ein Problem die Fenster passend hinzuschieben.

Ich denke es gibt für uns nur 2 Varianten.
1) So eine Art Gimp Look. Also alles kriegt sein eigenes "freischwebendes" Fenster
2) MDI
und evtl. 3) MDI mit Tabs. Aber dann kann man eben nicht mehr alles gleichzeitig darstellen (z.B. Tabelle und Grafik)

OregonGhost 12. Jun 2007 15:32

Re: Normale Anwendung in MDI wandeln?
 
In dem Fall muss ich erneut Phoenix zustimmen. Ihr habt da eine Anzahl darzustellende Panels, seien es Tabellen, Graphen oder irgendwelche virtuellen Messinstrumente. Dann schau doch mal, ob du diese Dinge nicht einfach zu mehreren in einem Fenster anzeigen kannst. Als Beispiel kann hier vielleicht mal die Netzwerk-Seite des Windows-Taskmanagers herhalten. Mein Rechner hat (offiziell :roll:) drei Netzwerkverbindungen. Jede hat hier ihr eigenes Diagramm und darunter gibt es noch eine Tabellenübersicht. Bei mehr oder weniger Verbindungen werden die Diagramme und die Tabelle passend neu angeordnet. Da noch ein wenig Flexibilität für den Benutzer mit rein, damit er z.B. bestimmte Anzeigen für bestimmte Geräte auf eine bestimmte Seite legen kann. Jede Seite zeigt dann eben die zugehörigen Panels an, und mehrere Seiten kann man dann wiederum über z.B. Tabs verwalten.

bernau 12. Jun 2007 21:55

Re: Normale Anwendung in MDI wandeln?
 
Zitat:

Zitat von OregonGhost
Wie in dem von Phoenix zitierten Wikipedia-Ausschnitt beschrieben handelt es sich bei dem Tabbed-Interface, das diverse aktuelle Browser verwenden, NICHT um MDI. MDI ist in der Tat mehr oder weniger out.

Zitat:

Zitat von Phoenix
Tabbed ist nicht wirklich MDI, weil dennoch nur ein Fenster sichtbar ist, welches nicht frei platzierbar innerhalb der Anwendung ist.

Ohne jetzt einen Glaubenskrieg anzetteln zu wollen. Tabbed ist nicht's anderes als ein beschnittenes MDI, bei dem man bei den MDI-Childs nur maximized zulässt. Und natürlich ein Tab zum Umschalten der einzelnen Fenster zur Verfügung stellt. Beide haben gemeinsam, daß mehrere Dokumente in einem Hauptprogramm integriert sind und nicht mehrere Instanzen eines Programmes wie wild durch die gegend fliegen.

OregonGhost 13. Jun 2007 11:36

Re: Normale Anwendung in MDI wandeln?
 
Zitat:

Zitat von bernau
Ohne jetzt einen Glaubenskrieg anzetteln zu wollen. Tabbed ist nicht's anderes als ein beschnittenes MDI, bei dem man bei den MDI-Childs nur maximized zulässt. Und natürlich ein Tab zum Umschalten der einzelnen Fenster zur Verfügung stellt. Beide haben gemeinsam, daß mehrere Dokumente in einem Hauptprogramm integriert sind und nicht mehrere Instanzen eines Programmes wie wild durch die gegend fliegen.

MDI ist ein feststehender Begriff, der u.a. von früheren Microsoft-Anwendungen geprägt wurde, bzw. um genauer zu sein eine Funktionalität von Windows. Dabei sind alle Fenster in einem Rahmen, dem MDI-Client-Fenster, frei beweglich. Bei den Tabbed-Systemen gibt es unter Umständen sogar nur ein Fenster, und die Dokumente sind nicht frei beweglich und können in ihrer Größe nicht verändert werden, außer wenn man das Fenster in mehrere Bereiche (Registerkartengruppen) unterteilt. Das ist schon ein erheblicher Unterschied in der Bedienung. Gemeinsamkeiten sind nicht dasselbe wie Gleichheit. Nur weil beide Systeme mehrere Dokumente anzeigen und das im Namen von MDI vorkommt, sind sie nicht das gleiche. Und ehrlich gesagt würde ich ein Tabbed-Interface eher nicht mithilfe von MDI umsetzen.

Edit: Ein schöner Auszug dazu aus der MDI-Doku:
Zitat:

MDI is an application-oriented model. Many new and intermediate users find it difficult to learn to use MDI applications. Therefore, many applications are switching to a document-oriented model.


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:29 Uhr.
Seite 1 von 2  1 2      

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