Diskussion zum Artikel "Benutzerdefinierte grafische Bedienelemente. Teil 1: Erstellen eines einfachen Bedienelements"
Ich frage mich, was für den zweiten Teil geplant ist?
Wird sich die Ideologie ändern? ...ich muss sie wirklich ändern.
Vielleicht sollten wir mit dem dritten Teil beginnen - der Erstellung von Formularen mit Ihren Steuerelementen.
und dann zum nächsten Teil übergehen - zu den inneren Abläufen der einzelnen Elemente.
Das heißt, wir sollten die Benutzer zunächst darüber aufklären, wie der Komplex als Ganzes funktioniert, wie das untergeordnete Element Nachrichten und Ereignisse mit dem übergeordneten Element austauscht, wie die Ideologie im Allgemeinen funktioniert. Das ist wichtig, denn es ist wünschenswert, vom Allgemeinen zum Besonderen überzugehen, - zu den Feinheiten jedes einzelnen Elements.
Und nebenbei bemerkt - man sollte nicht den Schwerpunkt auf das Zeichnen legen, d.h. wie jedes Element gezeichnet wird (man kann es kurz machen, aber man lässt alle Elemente durch die Show-Funktion zeichnen, damit die Benutzer wissen, wo sie in jeder Klasse nachschauen müssen, um den Zeichenblock zu sehen). Das Zeichnen ist wirklich nichts im Vergleich zur Ideologie des gesamten Prozesses.
Es wäre besser, einige fertige Beispiele von Formularen zu zeigen, in denen alle Elemente miteinander verbunden sind.
Das heißt, dass man an einem fertigen Beispiel die Besonderheiten aufschlüsselt.
Wird sich die Ideologie ändern? ... Ich muss sie wirklich ändern.
Vielleicht hätten wir mit dem dritten Teil beginnen sollen, mit der Herstellung der Formen.
und dann nach und nach zum Innenleben der einzelnen Elemente übergehen.
Was genau ist Ideologie?
Eine Form ist im Grunde genommen nichts - x- und y-Koordinaten.
Wenn Sie mit einer Form beginnen würden, was würden Sie dort schreiben - "dies ist eine Form, und hier werden Sie ein Steuerelement hinzufügen, und hier werden Sie sein Ereignis verarbeiten...", aber was für ein Steuerelement es ist, was es darstellt - niemand weiß es.
Wenn Sie ein Formular im zweiten Teil erstellen, während wir nur ein Steuerelement haben - das ist nicht aussagekräftig und nicht schön.
Was genau hat es mit der Ideoligie auf sich?
Die Form ist im Grunde nichts - x- und y-Koordinaten.
Erweitert auf die Antwort gerade oben.
Sie haben recht. Das ist der Punkt, die Form ist nichts. Worauf es ankommt, ist der Prozess des Austauschs von Ereignissen und die Interaktion aller Elemente als Ganzes. Und das kann man nur erklären, wenn man die Arbeit des Systems als Ganzes demonstriert, nicht Element für Element.
Wenn Sie ein Formular im zweiten Teil machen, während wir nur ein Steuerelement haben - es ist nicht aussagekräftig und nicht schön.
Erweitert auf die Antwort gerade oben.
Sie haben recht. Das ist der Punkt, die Form ist unwichtig. Die Hauptsache ist der Prozess des Ereignisaustauschs und der Interaktion aller Elemente als Ganzes.
Haben Sie das Formular und die Steuerklasse fertig?
Ziemlich fertig. Zuerst habe ich es ohne Unterfenster gemacht, jetzt bin ich dabei, alles so umzugestalten, dass es in Unterfenstern funktioniert.
Wird sich die Ideologie ändern? ...ich muss sie wirklich ändern.
Vielleicht hätten wir mit dem dritten Teil - der Erstellung von Formularen mit Ihren Steuerelementen - beginnen sollen.
und dann zum nächsten Teil übergehen - zur inneren Funktionsweise der einzelnen Elemente.
Das heißt, wir sollten die Benutzer zunächst darüber aufklären, wie der Komplex als Ganzes funktioniert, wie Nachrichten und Ereignisse zwischen dem untergeordneten Element und dem übergeordneten Element ausgetauscht werden, wie die Ideologie im Allgemeinen funktioniert. Das ist wichtig, denn es ist wünschenswert, vom Allgemeinen zum Besonderen überzugehen - zu den Feinheiten jedes spezifischen Elements.
Übrigens sollte die Betonung nicht auf dem Rendering liegen, d. h. darauf, wie jedes Element gezeichnet wird. Es ist besser, einige Beispiele zu zeigen, wie die Formen funktionieren und wie alle Elemente miteinander verbunden sind. Das Zeichnen ist wirklich nichts im Vergleich zur Ideologie des gesamten Prozesses.
Sagen Sie mir nicht, es gäbe schon genug Beispiele für die Erstellung einfacher Codes, aber Sie können keine erfolgreiche Hierarchie von Klassen oder zumindest ein einfach zu implementierendes Schema eines universellen, leicht transformierbaren Produkts erstellen. Selbst die Standardklassen von MQ erschweren oft das Schreiben von Programmen, indem sie Möglichkeiten im Voraus festlegen.
Es wird eine OK- und eine Abbrechen-Schaltfläche auf dem Formular geben, die Daten speichern, falls das Terminal neu gestartet wird. Es wird eine Ereignisbehandlung geben, die Möglichkeit, das Formular zu ziehen, zu minimieren.
GUT. Das ist sehr gut.
Wenn Sie im zweiten Teil über High-Level-Funktionen berichten, werden die Artikelkomponenten schneller verwendet.
Ich würde immer noch mit Formular + Schaltflächen (+ Eingabefeld) beginnen und erst im dritten Teil über spezifische Steuerkomponenten sprechen - Listen, Menüs usw.
Die Aufgabe ist ja, das Schreiben solcher Steuerelemente zu lehren. Aber solange es kein Formular gibt, in das man sie einfügen kann, wird der Artikel keine so spektakuläre und notwendige Wirkung haben.
Außerdem, sobald Sie Form+Button (ich meine 3 Arten - Radio, Push, Check) + EditBox bereits im zweiten Artikel geben, wird der Benutzer die Klassen als Ganzes sehen und in der Lage sein, seine eigenen Steuerelemente unabhängig zu erstellen.
- 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 Benutzerdefinierte grafische Bedienelemente. Teil 1: Erstellen eines einfachen Bedienelements :
Dieser Beitrag behandelt die grundlegenden Prinzipien für die Entwicklung von grafischen Bedienelementen. Wir bereiten Tools für eine schnelle und bequeme Arbeit mit grafischen Objekten vor, analysieren ein Beispiel für die Erstellung eines einfachen Bedienelements für die Eingabe von Text oder numerischen Daten und gehen darauf ein, wie dieses Bedienelement genutzt werden kann.
Autor: Dmitry Fedoseev