Ich mache eine Klasse, die darstellt und Image, und mit Windows speichern Sie Bilder in ImageList-Steuerelemente. Diese Klasse wird verwendet, um Bilder bequem zu anderen Steuerelementen wie ListViews oder Buttons hinzuzufügen oder einfach auf dem Bildschirm zu zeichnen. Meine Frage ist: Was ist das richtige Design für so etwas? Sollte jedes Bild seine eigene ImageList eines Bildes haben, oder sollte die Image Klasse eine riesige ImageList für alle Instanzen haben, oder was? Ich weiß nicht viel über die Interna der Windows-Klassen, also weiß ich nicht, wie "schwer" die ImageList-Klasse ist, aber wenn es relativ günstig ist, habe ich mich an die "jede Instanz hat eine eigene Imagelist" gelehnt. Was empfehlen Sie?Objektorientiertes Design für ein Bild mit ImageList
Antwort
Generell würde ich etwas dazwischen empfehlen.
Es scheint albern, eine andere Bildliste für jeder Bild zu haben. Sie wurden entwickelt, um Sammlungen von Bildern zu speichern und die Verwaltung dieser Sammlungen effizienter zu gestalten, nicht so sehr, um ein einzelnes Bild zu speichern.
Andererseits gibt es auch Nachteile beim Versuch, eine riesige Bildliste für alle Ihre Bilder zu verwenden. Alle Bilder in einer Bildliste müssen nämlich die gleiche Größe haben. Wenn dies für Ihre Bilder nicht zutrifft, müssen Sie sie in separaten Bildlisten platzieren.
Aber mehr auf den Punkt, ich bin nicht wirklich sicher, warum Sie in Betracht ziehen, eine Bildklasse zu erstellen, die eine Bilderliste an erster Stelle enthält. Wenn Sie keine Symbole/Cursor speichern oder sich keine Gedanken über Masken machen müssen, warum kapseln Sie einfach ein Handle auf die Bitmap, die das Bild darstellt. Das ist die gleiche Sache, die Sie sowieso in die "Add" -Methode der Bildliste übernehmen werden.
- 1. Objektorientiertes Design mit Ruby
- 2. Objektorientiertes Design für PHP-Anwendung
- 3. objektorientiertes Design in Laravel
- 4. Ideales objektorientiertes Design
- 5. Objektorientiertes Design Interview
- 6. Was sind die verräterischen Anzeichen für schlechtes objektorientiertes Design?
- 7. Workaround für den ImageList-Transparenzfehler?
- 8. Wie lade ich ein transparentes Bild von ImageList?
- 9. Gibt es ein gutes Buch für Boost-Bibliothek C++ und objektorientiertes Design in C++?
- 10. Objektorientiertes Design-Muster zu vermeiden if/then/else-Anweisungen
- 11. Was ist die Zusammensetzung in Bezug auf objektorientiertes Design?
- 12. Animiertes GIF in ImageList/TabPage
- 13. ungültiger Imagelist-Index - Delphi XE8
- 14. Neo4j - Objektorientiertes Paradigma mit Py2neo
- 15. ImageList Transparenz auf Listenansichten?
- 16. Gibt es eine gute Referenz für objektorientiertes | gutes Design in vb6?
- 17. TreeView nicht Bilder von Imagelist
- 18. ImageList/Image OutOfMemoryException
- 19. C# WinForms TreeView & ImageList
- 20. Objektorientiertes C++ win32?
- 21. Hinzufügen von 32-Bit-Bitmap zu ImageList
- 22. Kann System.Windows.Forms.ColumnHeader ein anderes Bild als eines aus der Haupt-ImageList verwenden?
- 23. Wie kann ich ein vorhandenes Bild in einer Winforms ImageList ersetzen?
- 24. 'Schema' Design für ein soziales Netzwerk
- 25. Bestes Design für ein Benutzer-/Rollenverwaltungssystem?
- 26. REST-API-Design für ein Alert-System
- 27. Objektorientiertes Klassendesign - Mixin-Klassen - Entscheidung für eine effektive Klassenstruktur
- 28. CGPath für ein Bild mit Alphakanal erhalten
- 29. Zoom-Effekte für ein Bild mit Silverlight
- 30. Datenbank-Design: Ein für viele verschiedene Arten
Danke, das scheint der richtige Weg, es zu tun, ich weiß nicht, warum ich nicht daran gedacht habe. –