BGRAControls/de

From Lazarus wiki
Jump to: navigation, search

Deutsch (de) English (en) português (pt) 中文(中国大陆)‎ (zh_CN)

Install

Download BGRABitmap

Install BGRABitmap with the file bgrabitmappack.lpk.

GitHub: https://github.com/bgrabitmap/lazpaint/

Download BGRAControls

Install BGRAControls with the file bgracontrols.lpk.

GitHub: https://github.com/bgrabitmap/bgracontrols/

Überblick

Autoren:

Dibo (Ersteller und Verwalter des Packages, Autor von: TBGRAImageList, TBGRASpeedButton, TBGRAButton, TBGRAPanel)

Lainz (Verwalter des Packages, Autor von: TBGRAImageButton, TBGRAImageToggleBox, TBGRASpriteAnimation, TBGRALabelFX, TBGRAWin7ToolBar)

Circular (Verwalter des Packages, Autor von: TBGRAKnob, TBGRAFlashProgressBar, TBGRAVirtualScreen, TBGRAShape, TBGRAGraphicControl)

Emerson Cavalcanti (Autor von: TBGRAImageManipulation)

codedeep (Autor von: TBGRALabel)

Lizenz: Modified LGPL.

Wie viele Leute wissen, enthält Lazarus GTK keine vollständige Unterstützung von Alpha-Farbkanälen. Ich habe einen Satz von Komponenten erzeugt, die TBGRABitmap zum Zeichnen der Symbole benutzen. Das löst teilweise Das Problem mit Alpha in GTK. Aber dieser Komponentensatz ist nicht nur ein Patch für GTK, sondern er enthält weitere ansprechende Komponenten, welche die Stärken des BGRABitmap-Pakets ausnutzen.

Screenshots: Einige Bilder aus dem Projekt 'testbgracontrols'.

testbgrac1.png

testbgracontrols > Main.

testbgrac2.png

testbgracontrols > Windows 7 ToolBar.

testbgrac4.png

testbgracontrols > Ribbon.

Verwandte Artikel

BGRAButton Gallery - Gallery of buttons with source code to use in your projects with BGRAButton.

BGRASpriteAnimation - Usage of the sprite animation component.

uE_Controls - Other controls developed with BGRABitmap.

BGRABitmap - The library used to create this controls.

LazPaint - A paint program developed with Lazarus and BGRABitmap.

Verwendung

Einfach auf ein Form fallen lassen und wie andere normale Komponenten verwenden.

Schaltflächen:

  • TBGRAButton
  • TBGRAImageButton
  • TBGRAImageToggleBox
  • TBGRASpeedButton

Labels

  • TBGRALabel
  • TBGRALabelFX

Tafeln

  • TBGRAPanel
  • TBGRAVirtualScreen

Image

  • TBGRAGraphicControl
  • TBGRAImageList
  • TBGRAImageManipulation
  • TBGRASpriteAnimation

Andere

  • TBGRAFlashProgressBar
  • TBGRAKnob
  • TBGRAShape
  • TBGRAWin7ToolBar

TBGRAImageList

Verwendung als Ersatz für: TImageList

Vorher:

before-TImageList.png

Nachher:

after-TBGRAImageList.png

Eine Komponente die von TImageList abgeleitet wurde. Deshalb kann jedes Steuerelement (getestet mit TToolBar und TTreeView), das die Methode "TImageList.Draw" zum Zeichnen der Symbole benutzt, automatisch Alpha-Unterstützung haben. Verwenden Sie diese Komponente anstelle von TImageList. Diese Komponente ermöglicht unter GTK Alpha, darum arbeitet sie unter Windows (und anderen Interfaces) genau so wie eine normale TImageList (d.h. sie benutzt nicht BGRABitmap zum Zeichnen).

TBGRASpeedButton

Verwendung als Ersatz für: TSpeedButton

BGRASpeedButton.png

Eine Komponente die von TSpeedButton abgeleitet wurde und die Glyphen mittels TBGRABitmap zeichnet. Diese Komponente ermöglicht unter GTK Alpha, darum arbeitet sie unter Windows (und anderen Interfaces) genau so wie ein normaler TSpeedButton (d.h. sie benutzt nicht BGRABitmap zum Zeichnen).

TBGRAButton

Verwendung als Ersatz für: TButton

bgrabutton.png

Eine anpassbare graphische Komponente, die nur BGRABitmap-Funktionen zum Zeichnen benutzt. Diese Komponente ignoriert den Schalter -dGTK_ONLY. Ein Demoprojekt ist im Package enthalten.

Funktionalität:

  • Gradienten, durchsichtiger oder farbiger Hintergrund. Double_Gradient/de.
  • Text mit Schatten: BGRA-Antialiasing oder ähnliche Standarddarstellung wie mit ClearType.
  • Abgerundete Kanten, innere Beleuchtung.
  • Zustände: normal, schwebend & angeklickt voll ampassbar und deaktiviert mit Graustufen.
  • Spezial: Down, DropDown, Static.
  • Vollständiges AutoSize mit Glyphen.

TBGRAPanel

Verwendung als Ersatz für: TPanel

Ein einfacher Nachfolger von TPanel, der einen Gradient als Hintergrund haben kann. Wurde extra für TBGRAButton entworfen (um eine gutaussehende Werkzeugleiste für bgrabuttons zu haben). Diese Komponente ignoriert den Schalter -dGTK_ONLY.

TBGRAKnob

BC-Bgraknob.png

Ein graphischer Drehknopf, entworfen von Circular.

TBGRAFlashProgressBar

Verwendung als Ersatz für: TProgressBar

BC-Bgraflashprogressbar.png

Ein Flash-Fortschrittsbalken, entworfen von Circular.

TBGRAImageManipulation

Verwendung als Ersatz für: TImage

Eine Komponente, um in einer Anwendung den Import von Bildern zu ermöglichen.

In der aktuellen Version können Sie ein Bild importieren und zuschneiden (auch unter Beibehaltung des Bildseitenverhältnisses). Wenn Sie, beispielsweise, Fotos mit dem Verhältnis 3x4 importieren wollen, stellen Sie die Eigenschaft 'ratio' auf 3:4. Beim Import von Bildern mit unterschiedlicher Größe stellt die Komponente sicher, dass das Bild in den Proportionen den gewünschten Werten entspricht.

Sie können die Minimalgröße des Bildes mit den Eigenschaften 'MinWidth' und 'MinHeight' festlegen.

Sie können auch das Bild mittel der eingebauten Funktionen drehen.

Siehe auch die Demo der Komponente:

bgraimagemanipulation.jpg

Nachdem das Bild durch die Komponente geändert wurde, übergeben Sie es mittels Stretch an ein Ziel. Dieses sollte natürlich das gleiche Verhältnis aufweisen, um nicht das Ergebnis zu verzerren.

TBGRAImageButton

Verwendung als Ersatz für: TButton

bgraimagebutton.png

Diese Komponente erzeugt eine Schaltfläche mit 4 möglichen Zuständen (aus Bitmaps). Unterstützt werden Beschriftungen mit Schatten.

Die Bitmap muss die 4 Zustände enthalten (von oben nach unten, mit derselben Höhe) in folgender Reihenfolge: normal, enter, pressed, disabled.

Falls Sie die BitmapOptions verwenden, dann benötigen Sie für jeden Zustand ein Bild das einen Rahmen hat, und innerhalb dessen einen Inhalt, der wiederholt (also gekachelt) dargestellt werden kann. Mit der Option "FillCenter" wird (falls Sie eine texturierte Schaltfläche wollen) der Inhalt wiederholt, während der Rahmen bleibt wie er ist. Diese Methode wird auch von Windows angewandt, um die Schaltflächen mit Themen darzustellen.

Beispielsbutton:

samplebgraimagebutton.png

Beispielsbutton (mit Alpha):

samplebgraimagebuttonalpha.png

TBGRAVirtualScreen

Verwendung als Ersatz für: TPanel

Der Grundsatz lautet: Hier wird auf einer Speicher-Bitmap gezeichnet.

Die Komponente hat ein besonderes Ereignis, OnRedraw, das immer dann ausgelöst wird, wenn die gesamte Bitmap neu gezeichnet werden muss. Das erfolgt am Anfang, bei Größenänderungen und wenn die Methode "Redraw" aufgerufen wird.

Andererseits ist es möglich, die Eigenschaft "Bitmap" zu ändern und "Invalidate" oder "Repaint" aufzurufen. Das vermeidet das Löschen des gesamten Inhalts der Bitmap.

TBGRAShape

Verwendung als Ersatz für: TShape

samplebgrashape.png

Die Komponente hat volle Alpha-Unterstützung. Sie können die Anzahl der polygone wählen mit abgerundeten Kanten & Gradienten (linear, radial, rautenförmig, gespiegelt).

TBGRAImageToggleBox

ENTFERNT IN VER 1.1.0.7.

Verwendung als Ersatz für: TToggleBox

Die Komponente erzeugt einen Umschaltknopf aus einer Bitmap.

Die Bitmap muss 8 Bilder enthalten (von oben nach unten, mit derselben Höhe) ) in folgender Reihenfolge: unchecked normal, unchecked enter, unchecked pressed, unchecked disabled für den Zustand "Unchecked" und checked normal, checked enter, checked pressed, checked disabled für den Zustand "Normal".

Beispiel für Umschaltknopf:

sampletogglebox.png

TBGRAGraphicControl

Verwendung als Ersatz für: TPaintBox

Ein TBGRAGraphicControl-Element, das es Ihnen erlaubt, Ihre Komponente selbst mit Alphablending zu zeichnen.

TBGRASpriteAnimation

Verwendung als Ersatz für: TImage

Lesen Sie dazu mehr im Artikel BGRASpriteAnimation.

bgraspriteanimation.png

Damit stellen Sie Animationen aus einer Bitmap dar. Sie benötigen ein Bild, das alle Animationsschritte in horizontaler Anordnung enthält.

Es gibt die Möglichkeit anzugeben, wie oft die Animation abgespielt werden soll (0 für unendlich, 1, 2, etc...) und die Animation mittels "static" zu stoppen. Ebenfalls die Geschwindigkeit, die Richtung und die Transparenz.

Merkmale:

  • Animation: invert, position, lap, speed, static, repeat.
  • Sprite: fill opacity (global transparency), flip mode (horizontal, vertical, both), key color (transparent color), resample (normal or fine resample modes). AutoSize.
  • AnimatedGifToSprite: konvertiert ein animiertes GIF in ein BGRABitmap-Sprite.

TBGRALabel

Verwendung als Ersatz für: TLabel

Eine Labelkomponente, die auf TBGRAButton basiert.

Merkmale:

  • Beschriftung mit oder ohne Schatten
  • Volle Unterstützung von Alpha und Antialiasing
  • Wortumbruch
  • Beschriftung mit der Eigenschaft "Editor Multiline"

TBGRALabelFX

Verwendung als Ersatz für: TLabel

bgralabelfx.png

Merkmale:

  • Outline
  • Shadow

ToDo:

  • Benutze BGRATextFX multicolor, Texturen.
  • etc.

TBGRAWin7ToolBar

bgrawin7toolbar.png

Ist ein Nachfolger von TBGRAVirtualScreen mit default child sizing, und einem netten Win7-ToolBar-Hintergrund.

BGRASamples Unit

Diese Unit hat Beispielszeichnungen, Stile für Schaltflächen und Farbenkonstanten für verschiedene Benutzeroberflächen.

ioselements.png

  • Accent Color: die Farben aus Windows Phone. Die Akzentfarbekann in TBGRAButton und TBGRAImageButton benutzt werden (siehe die unterschiedlichen Prozeduren).
  • Facebook button color: grau, grün und blau, mit einer Prozedur, um ein Bild im Zustand "normal" oder "pressed" zu erzeugen, dieser Stil kann auch in einem TBGRAImageButton verwendet werden.
  • TBGRASampleStyle: Stile für TBGRAButton ('Default', 'Flash Player', 'Windows 7 ToolBar', 'Windows 7 ToolBar Smooth', 'Windows 7', 'Office 2010', 'Mac OSX Lion', 'Windows 7 Cristal').
  • iOS Elemente: Zeichnet einen grauen Balken, die blaue Werkzeugleiste und einen gekachelten Hintergrund, gleiche Elemente wie im iOS-Bildschirm.
  • Glass: in testbgracontrols verwendet, zeigt ein Bild in einem Virtualscreen und wendet Weichzeichner auf den Button-Bereich an.
  • Drawings: Werkzeugleiste und Hintergrund für Flash-Player, Windows 7 Werkzeugleiste.
  • Einige andere nützliche Prozeduren für die Arbeit mit TBGRAButton und TBGRAImageButton.