Website-Icon Embarcadero RAD Studio, Delphi, & C++Builder Blogs

Neue VCL-Funktionen in RAD Studio 11

11 richandtree

Jetzt, da RAD Studio 11 veröffentlicht ist, möchte ich auf einige seiner neuen Funktionen zurückkommen, beginnend mit den VCL-Verbesserungen.


Unter den neuen Funktionen in Delphi 11, C++ Builder 11 und RAD Studio 11 freue ich mich sehr über die Arbeit, die das Team an den VCL-Kernkomponenten geleistet hat, um eine Reihe von Anfragen zu erfüllen, die seit einiger Zeit anhängig sind. Lassen Sie uns einige von ihnen berühren.

Das neue RichEdit-Steuerelement

Die sichtbarste neue Funktion ist die TRichEdit-Migration auf die neueste Plattformversion, das RichEdit-Steuerelement 4.1, das von MSFTEDIT.dll implementiert wird. Neben einer allgemeinen Verbesserung bietet die neue Steuerung Funktionen wie Rechtschreibprüfung, URL-Erkennung, Transparenz mit neuen Eigenschaften wie Transparent, EnableURLs, SpellChecking und das neue OnLinkClick-Ereignis.

Die Felder für die RichEdit-Textattribute wurden erheblich verbessert. Dies ist ein Bild aus der Demo, die ich im  RAD 11-Start-Webinar verwendet habe .

Eine sehr schöne, ausführliche Berichterstattung finden Sie in Alister Christies YouTube-Video „ Enhancements to TRichEdit – Delphi #188 “. Beachten Sie auch, dass die Eigenschaft Lines der TDBRichEdit-Komponente jetzt öffentlich ist.

Eine TreeView mit CheckBoxen

Ein weiteres herausragendes Feature ist die zusätzliche Unterstützung für Kontrollkästchen im TreeView-Steuerelement der Plattform. Dies ist jetzt im TTreeView-Steuerelement verfügbar. Kontrollkästchen unterstützen mehrere Zustände und können der regulären Baumstruktur hinzugefügt werden. Tatsächlich kann die neue TNodeCheckState-Enumeration die folgenden Werte annehmen: ncsNone, ncsUnchecked, ncsChecked, ncsPartial, ncsDimmed, ncsExclusion.

Unten sehen Sie ein Bild mit einer TreeView mit Kontrollkästchen in Aktion:

Die neue DB-BeschriftungBearbeiten

In dieser Version gibt es auch ein neues Marken-VCL-Steuerelement, eine Dataware-Version von LabeledEdit – eine Kombination aus einem Edit mit seinem Label. Dies ist praktisch, da Sie nur die Position der Bearbeitung verwalten müssen und das Label neben (oder oben, je nach Konfiguration) angezeigt wird. Beachten Sie, dass in der datensensitiven Version beim Zuweisen eines Felds für das Steuerelement der aktuelle Datensatzwert in der Bearbeitung angezeigt wird, während der Feldname zum Standardwert der Beschriftung wird. Unten sehen Sie, wie einfach es ist, dies über das Quick Edit-Menü zu konfigurieren:

TWICImage Multiframe-Unterstützung

Die TWICImage-Klasse (eine der Implementierungsoptionen für das TImage-Steuerelement) ist ein Wrapper um die Windows Imaging-Komponente der Plattform. Das einzige Feature in dieser Wrapper-Klasse ist die Unterstützung für mehrere Frames. Dies wird durch zwei neue Eigenschaften verfügbar gemacht: FrameCount und FrameIndex. Sie legen FrameIndex fest, um den gewünschten Frame aus einem Multiframe-Bild (z. B. einer Multiframe-TIFF-Datei) anzugeben.

Und viele mehr

Es gibt viele kleinere Funktionen, die erwähnenswert sind, da sie Ihren bestehenden Anwendungen einen sofortigen Nutzen bieten können:

  • Coolbar hat Chevron-Unterstützung über eine neue boolesche Eigenschaft ShowChevron
  • Die Basisklasse TWinControl bietet jetzt die Methoden LockDrawing und UnlockDrawing, um Aktualisierungen zu deaktivieren und zu steuern. Dadurch wird die Ausführung der Windows-Nachricht WM_SETREDRAW ausgelöst. Das ist wahrscheinlich einen eigenen Blogbeitrag wert…
  • Die TNumberBox-Klasse hat ein paar zusätzliche Features: Es gibt eine neue ValueCurrency-Eigenschaft und die DisplayFormat-Eigenschaft ist jetzt veröffentlicht
  • Die VCL StyleUtils.inc wurde in eine reguläre Einheit umgewandelt
  • Gemeinsame Dialogfelder zum Anzeigen der Eigenschaften EncodingIndex und ShowEncodingList
  • Es gibt ein neues OnTracking-Ereignis für TTrackbar
  • Es gibt einen zusätzlichen CheckTabEnabled-Parameter in TPageControl.FindNextPage, um deaktivierte Registerkarten zu überspringen
  • TButtonCategory hat eine VisibleGutter-Eigenschaft.
  • TScrollBox unterstützt automatisch das Mausrad – beachten Sie, dass diese Änderung das Verhalten vorhandener Anwendungen beeinflussen kann
  • VCL-Funktion ScaleImage unterstützt Alpha Channel
  • Die Standardformulargröße ist jetzt größer
  • SetSelText und SetSelTextBuf bieten die Möglichkeit, den Undo-Puffer nicht zurückzusetzen
  • TCustomTitleBarPanel verfügt jetzt über die Eigenschaften TitleButtonClose, TitleButtonRestore, TitleButtonMin und ein OnUpdateTitlebarButtons-Ereignis.
  • TDateTimePicker ermöglicht das gemeinsame Ändern von Datum und Uhrzeit in der Benutzeroberfläche

Abschluss

Wenn Sie den Eindruck haben, dass es in RAD Studio 11 viel Neues in der VCL gibt… nun, das ist ein richtiger Eindruck. Anstelle von brandneuen Glockenspielkomponenten lag der Fokus darauf, viele kleinere Lücken zu schließen und die gesamte Bibliothek moderner und robuster zu gestalten – da das Team auch eine erhebliche Anzahl offener Probleme behoben hat. Ich hoffe, dass alle Entwickler, die die VCL-Bibliothek verwenden, den Aufwand zu schätzen wissen und wir immer offen für zusätzliche Ideen und Vorschläge sind.


Die mobile Version verlassen