Diskussion zum Artikel "Grafische Interfaces X: Elemente der Zeit, Listen von Kontrollkästchen und das Sortieren von Tabellen (build 6)"
Ich habe konkrete Fragen:
1. Haben Sie eine Reihe von Spaltennamen in der Tabelle, wenn vertikal scrollen, bleibt stationär, oder geht aus dem Feld der Sichtbarkeit? Ähnliche Frage zur ersten Spalte mit Zeilennamen - wird sie nach links verschoben, wenn Sie den horizontalen Schieberegler nach rechts bewegen oder nicht?
2. Verändert sich die Breite der Spalten?
3. ist die Tabelle im obigen Beispiel auf der Leinwand gezeichnet, oder besteht sie aus Objekten?
Ich habe konkrete Fragen:
1. Haben Sie eine Reihe von Spaltennamen in der Tabelle, wenn vertikal scrollen, bleibt stationär, oder geht aus dem Feld der Sichtbarkeit? Ähnliche Frage zur ersten Spalte mit Zeilennamen - wird sie nach links verschoben, wenn Sie den horizontalen Schieberegler nach rechts bewegen oder nicht?
2. Verändert sich die Breite der Spalten?
3. ist die Tabelle im obigen Beispiel auf der Leinwand gezeichnet oder besteht sie aus Objekten?
(1) Diese Modi sind anpassbar. Das heißt, die erste Zeile und die erste Spalte können fixiert werden (als Überschriften) und sie werden nicht mit den Tabellendaten verschoben.
2. In diesem Artikel betreffen die Aktualisierungen eine Tabelle vom Typ CTable. In ihr wird die Breite der Spalten automatisch an die Gesamtbreite der Tabelle angepasst.
(3) Die Tabelle vom Typ CTable besteht aus grafischen Standardobjekten vom Typ OBJ_EDIT.
Andere Tabellentypen und Aktualisierungen, die für sie freigegeben wurden, finden Sie in den folgenden Artikeln (einschließlich dieses Artikels):
- GUIs VII: Tabellenelemente (Kapitel 1)
- GUIs X: Aktualisierungen für die Easy And Fast-Bibliothek (Build 2)
- GUI X: Aktualisierungen der Easy And Fast Bibliothek (Build 3)
- GUI X: Zeit-Element, Checkbox-Listen-Element und Tabellen-Sortierung (Build 6)
1. Diese Modi sind anpassbar. Das heißt, die erste Zeile und die erste Spalte können fixiert werden (Überschriften) und werden nicht mit den Tabellendaten verschoben.
2. In diesem Artikel betreffen die Aktualisierungen eine Tabelle vom Typ CTable. In ihr wird die Breite der Spalten automatisch an die Gesamtbreite der Tabelle angepasst.
(3) Die Tabelle vom Typ CTable besteht aus grafischen Standardobjekten vom Typ OBJ_EDIT.
Andere Tabellentypen und die für sie freigegebenen Aktualisierungen finden Sie in den folgenden Artikeln (einschließlich dieses Artikels):
- GUIs VII: Tabellenelemente (Kapitel 1)
- GUIs X: Aktualisierungen für die Easy And Fast-Bibliothek (Build 2)
- GUI X: Aktualisierungen der Easy And Fast Bibliothek (Build 3)
- GUI X: Zeit-Element, Checkbox-Listen-Element und Tabellen-Sortierung (Build 6)
Ich habe mir das Material in den Artikeln im Detail durchgelesen. Im Prinzip erstellen die vorgeschlagenen Klassen und Methoden die notwendigen Tabellen für den Benutzer und überzeugen durch ihre Qualität und Durchdachtheit. Natürlich können Sie die Möglichkeit hinzufügen, verschiedene Elemente (z. B. Kontrollkästchen, Dropdown-Listen) in Tabellenzellen einzufügen, aber das liegt in der Zukunft.
Ich würde Ihnen raten, über die Arbeitsintensität der vorgeschlagenen Technologie nachzudenken. Um objektiv zu sein, die Arbeitsintensität ist immer noch vorhanden.
Die weite Verbreitung und Anwendung dieser Entwicklungen hängt auch von der Benutzerfreundlichkeit ab. Dem kann man kaum widersprechen....
Um die Erstellung von Tabellen zu vereinfachen, würde ich vorschlagen, eine einfache Methode für den Benutzer zu entwickeln, mit der er die erforderliche Tabelle erstellen kann, ohne etwas lernen zu müssen, aber unter Berücksichtigung der Notwendigkeit, den Benutzer zu schulen, sage ich, je arbeitsintensiver - desto besser ...
...
Um das Erstellen von Tabellen zu vereinfachen, würde ich vorschlagen, eine einfache Methode zu entwickeln, mit der der Benutzer eine Tabelle erstellen kann, ohne etwas lernen zu müssen, aber in Anbetracht der Notwendigkeit einer Benutzerschulung würde ich sagen, dass je arbeitsintensiver, desto besser....
Die Interna der Bibliothek werden für Entwickler detailliert beschrieben. Das heißt, für Leute, die das Programmieren lernen, werden solche Beispiele, die auf einem echten Projekt basieren, sehr nützlich sein. Für Benutzer, die sich nicht den Kopf über die Erstellung einer Bibliothek zur Erstellung grafischer Oberflächen zerbrechen wollen, gibt es in jedem Artikel Testanwendungen, die einfache Beispiele für Methoden zur Erstellung dieses oder jenes Steuerelements zeigen.
Es ist seltsam, dass Sie mir das erklären müssen, nachdem Sie alle Artikel dieser Reihe gelesen haben (und Sie haben wiederholt deutlich gemacht, dass Sie sie alle gelesen haben).
Die Interna der Bibliothek werden für Entwickler im Detail beschrieben. Das heißt, für diejenigen, die das Programmieren lernen, sind solche Beispiele, die auf einem echten Projekt basieren, sehr nützlich. Für Benutzer, die sich nicht mit der Erstellung einer Bibliothek zur Erstellung von grafischen Oberflächen befassen möchten, enthält jeder Artikel Testanwendungen, die einfache Beispiele für Methoden zur Erstellung dieses oder jenes Steuerelements zeigen.
Es ist seltsam, dass Sie, nachdem Sie alle Artikel dieser Reihe gelesen haben (und Sie haben wiederholt deutlich gemacht, dass Sie sie alle gelesen haben), mir das erklären müssen.
Leider habe ich die Artikel immer noch nicht sorgfältig gelesen. Meistens habe ich mir nur die Grafiken in den Bildern angeschaut, da sie die Quintessenz der ganzen Entwicklung sind.
Wenn ich anfange, mich mit dem gesamten Code zu befassen, befürchte ich, dass ich noch viele weitere Meinungsverschiedenheiten mit Ihnen über den Ansatz haben werde.
Die Nützlichkeit Ihrer Artikel für die Ausbildung von Programmierern ist jedoch offensichtlich.
P.S. Um genauer zu sein, denke ich, dass Arbeit und Übung die Grundlage für das Lernen und den Erwerb von Fähigkeiten sind. Man sollte unnötige "Erleichterungen" in der Ausbildung vermeiden. Zum Beispiel kann die Verwendung von Taschenrechnern in der Grundschule den Matheunterricht sinnlos machen. Es hat sich gezeigt, dass Erstklässler, die einen Taschenrechner erhalten, nicht richtig zählen lernen. Sie müssen das Zählen auswendig lernen und an ihren Fingern erklären. Was aber, wenn es für jemanden profitabel ist, diese Taschenrechner in der Nähe der Schule zu verkaufen? Was sollen wir dann tun?
danke für den Artikel.......
Nun, jetzt können wir weltraumtaugliche Paneele herstellen.
(Bleibt nur noch zu überlegen, wofür wir diesen ganzen Reichtum verwenden sollen).
Leider habe ich die Artikel immer noch nicht aufmerksam gelesen. Meistens habe ich mir nur die Grafiken in den Bildern angesehen, da sie die Quintessenz der ganzen Entwicklung sind.
Ich hoffe, dass es nur wenige solche Leser gibt, die sich nur die Bilder ansehen. )
Für regelmäßige Benutzer der Bibliothek wird es einen separaten Artikel geben, in dem sich alles darum dreht, wie man die Bibliothek benutzt, ohne in das Innenleben der Bibliothek einzutauchen. Außerdem wird es eine ausführliche Dokumentation mit einer Beschreibung der Methoden geben, die einem Benutzer von seiner eigenen Klasse aus zur Verfügung stehen. Aber das ist noch eine Weile hin. Eine Menge nützlicher und notwendiger Funktionen werden vorher implementiert.
Ich hoffe, es gibt nur wenige solcher Leser, die sich nur Bilder ansehen. )
Für regelmäßige Benutzer der Bibliothek wird ein separater Artikel vorbereitet, in dem sich alles auf die Benutzung der Bibliothek konzentriert, ohne in die interne Struktur einzutauchen. Außerdem wird es eine ausführliche Dokumentation mit einer Beschreibung der Methoden geben, die einem Benutzer von seiner eigenen Klasse aus zur Verfügung stehen. Aber das ist noch eine Weile hin. Bis dahin werden noch viele nützliche und notwendige Funktionen implementiert.
Ich wiederhole: Leider habe ich mich noch nicht in die Feinheiten Ihrer Bibliotheksimplementierung eingelesen und vertieft. Das ist mein Nachteil.
In Zukunft, wenn ich mehr Zeit habe, werde ich Ihre Bibliothek von Anfang an studieren und alle Lösungen verstehen. Aber dann werde ich alles, was ich für unwirksam halte, ausführlich und technisch fundiert kommentieren und kritisieren und parallel dazu andere Lösungen anbieten. Das mag Ihnen nicht gefallen, aber ich kann es nicht anders machen.
P.S. Was Sie in Zukunft tun werden, ist richtig. Entwickeln Sie die Bibliothek weiter.
...
In Zukunft, wenn ich mehr Zeit habe, werde ich Ihre Bibliothek von Anfang an studieren und alle Lösungen verstehen. Aber dann werde ich alles, was ich für unwirksam halte, ausführlich und fachlich fundiert kommentieren und kritisieren und parallel dazu andere Lösungen anbieten. Das mag Ihnen nicht gefallen, aber ich kann es nicht anders machen.
...
Nur bevor Sie anfangen zu kritisieren, müssen Sie die ganze Serie lesen, denn ab dem 10. Teil werden Ergänzungen und Korrekturen vorgenommen. Wenn Ihre Lösungen technisch erprobt sind, d.h. in Code umgesetzt sind und getestet werden können, so dass man daraus die richtigen Schlüsse ziehen kann, dann kann ich nicht anders als sie zu mögen. Im Gegenteil, ich werde sehr glücklich sein. )
Nur bevor Sie anfangen zu kritisieren, müssen Sie die ganze Serie lesen, da ab dem 10. Teil Ergänzungen und Korrekturen vorgenommen werden. Wenn Ihre Lösungen technisch erprobt sind, d.h. in Code umgesetzt sind und getestet werden können, so dass man daraus die richtigen Schlüsse ziehen kann, dann kann ich nicht anders als sie zu mögen. Im Gegenteil, ich werde sehr glücklich sein. )
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Neuer Artikel Grafische Interfaces X: Elemente der Zeit, Listen von Kontrollkästchen und das Sortieren von Tabellen (build 6) :
Weiterentwicklung der Bibliothek zum Erstellen grafischer Benutzeroberflächen. Zeit und Listen von Kontrollkästchen werden diesmal behandelt. Weiters verfügt die Klasse CTable jetzt über die Möglichkeit, Daten auf- oder absteigend zu sortieren.
Zählen wir mal alle Elemente zur Steuerung der Zeit auf:
Fig. 1. Komponenten der Zeitsteuerung.
Autor: Anatoli Kazharski