Benutzer-Werkzeuge

Webseiten-Werkzeuge


k20:k20.8:start

20.8 Klasse Stock

Die Klasse Stock ermöglicht Ihnen den Zugriff auf Icons aus dem Bestand von Gambas in vordefinierten Bildgrößen in der Einheit Pixel. Die Größen der quadratischen Icon sind 16 (small), 22 (medium), 32 (large), 48 (huge), 64, 96 und 128. Sie können folgenden Komponenten ein Icon – als kleine Bilder mit einem Symbol – zuweisen:

Button, ButtonBox, CheckBox, ColorButton, ColorChooser, ColumnView, ComboBox, Container, Control, 
DateBox, DateChooser, Dial, DirChooser, DirView, DrawingArea, Editor, Embedder, Expander, FileChooser, 
FileView, FontChooser, Form, Frame, GridView, HBox, HPanel, HSplit, IconPanel, IconView, LCDNumber, 
Label, ListBox, ListContainer, ListView, MaskBox, MenuButton, MovieBox, Panel, PictureBox, ProgressBar, 
RadioButton, ScrollArea, ScrollBar, ScrollView, Separator, SidePanel, Slider, SpinBox, TabPanel, 
TabStrip, TableView, TextArea, TextBox, TextEdit, TextLabel, ToggleButton, ToolButton, ToolPanel, 
TrayIcon, TreeView, UserContainer, UserControl, VBox, VPanel, VSplit, ValueBox, Window, Wizard, 
_IconPanelContainer, _TabPanelContainer, _WizardContainer

Die Zuweisung erfolgt entweder zur Entwicklungszeit in der IDE im Eigenschaften-Fenster oder zur Laufzeit der Programms. Dann müssen Sie die entsprechenden Anweisungen kodieren.

20.8.1 Zuweisung eines Icon für eine Komponente in der IDE

Nachdem Sie eine Komponente auf dem Formular platziert haben, können Sie dieser Komponente ein Icon zuweisen. Wenn eine Komponente markiert ist, dann sehen Sie im Eigenschaften-Fenster wesentliche Eigenschaften der Komponente. Suchen Sie die Eigenschaft Picture und nicht – wie man vermuten würde – nach Icon. Klicken Sie zuerst in die leere Eingabebox und dann auf die sich zeigenden kleinen drei Punkte. Es öffnet sich ein Bild-Auswahldialog. Wählen Sie zuerst den Reiter Bestand, danach die entsprechende Größe für das Icon und abschließend das Icon aus. Beenden Sie den Dialog mit 'OK'.

Icon-Auswahl-Dialog

Abbildung 20.8.1.1: Icon-Auswahl-Dialog

Im Eigenschaften-Fenster sehen Sie den folgenden Eintrag:

Icon-Auswahl-Dialog

Abbildung 20.8.1.2: Icon-Auswahl-Dialog

20.8.2 Ermittlung der Namen von Icon aus dem Bestand von Gambas

Wenn Sie die Anweisungen zur Zuweisung von einem Icon an eine Komponente kodieren wollen, dann benötigen Sie den Namen des kleinen Bildes mit einem Symbol. Diese Namen der einzelnen Icon aus dem Bestand von Gambas ermitteln Sie in einem kleinen Projekt – einschließlich der Anzeige der Icon – mit wenigen Code-Zeilen, nachdem Sie auf dem Formular die Komponente IconView positioniert haben:

' Gambas class file
 
Public Sub Form_Open()
  FMain.Height = 272
  FMain.Width = 664
  FMain.Center
  FMain.Resizable = True
  FMain.Arrangement = Arrange.Fill
  DisplayIcons() 
End ' Form_Open
 
Private Sub DisplayIcons() 
  Dim sIconKey, sIconName As String
 
  IconView.Clear()    
  For Each sIconKey In Stock.Icons ' Bis Version GB 3.2 für Stock.Icons → Stock.List setzen
    sIconName = "icon:/32/" & sIconKey
    IconView.Add(sIconKey, sIconKey, Picture[sIconName])
  Next ' sIconKey
 
End ' DisplayIcons() 

Nach dem Start des Programms sehen Sie die Icon und erfahren den dazu gehörenden Namen, der sich nicht immer aus dem Symbol erschließt, wie das Bild mit dem Ausrufezeichen zeigt:

Icon Abbildung 20.8.2.1: IconView mit Icon aus dem Bestand von Gambas

Beachten Sie: Unter Ubuntu ist die Anzeige von Icon in Komponenten abgeschaltet (Standard) mit der Begründung, diese würden den Nutzer nur stören. Um die Icon zu sehen, müssen Sie in einem Terminal den folgenden Befehle ausführen, dann ist die bunte Welt der Icons – nicht nur in Menüs – wieder in Ordnung:

ALT+F2 —> Terminalfenster:

gconftool --type=bool --set /desktop/gnome/interface/menus_have_icons 1
gconftool --type=bool --set /desktop/gnome/interface/buttons_have_icons 1

20.8.3 Zuweisung eines Icon für eine Komponente – Projekt

Nachdem Sie die Namen der Icon kennen, können Sie die Zuordnung der kleinen Bilder mit einem Symbol auch im Quelltext eines Projektes kodieren. Das wird notwendig, wenn Sie zum Beispiel die Icon in Abhängigkeit von bestimmten Programmzuständen verändern wollen. Die zwei Beispiele in der Hilfe von Gambas unter http://gambasdoc.org/help/comp/gb.form/stock?v3 sollten Sie sich unter diesem Aspekt ansehen!

Im vorgestellten Projekt SVN werden viele Bilder eingesetzt. Einerseits sind es Icon aus dem Bestand von Gambas und andererseits ein größeres Bild, das in einem speziellen Projekt-Ordner gespeichert wurde. Zwei Komponenten werden bereits zur Entwicklungszeit – hier sind es Button – Icon zugewiesen. Eine Beschreibung hierfür finden Sie im Kapitel 20.8.2. Die Zuweisungen der anderen Bilder werden kodiert. Wenn eine Komponente deaktiviert wurde, dann sehen Sie das Icon nur in der Einheitsfarbe grau. Die Icon haben alle die gleiche Größe 16px. Sie können aber statt des numerischen Wertes 16 auch die Konstante small im Quelltext benutzen. Die Einheit px wird nicht verwendet.

Entwicklungszeit

Abbildung 20.8.3.1: Formular zur Entwicklungszeit

Im folgenden Ausschnitt wird nur der Quelltext der Ereignisbehandlungsroutine Form_Open() gezeigt, weil in ihr alle relevanten Anweisungen – gelb unterlegt – stehen:

Public Sub Form_Open()
 
  FMain.Center
  FMain.Resizable = False
  PictureBox1.Picture = Picture["IconLast/new-logo.png"] ' Logo GB2
 
  btnUpdateStart.Picture = Picture["icon:/16/play"]
  btnReconfUpdate.Picture = Picture["icon:/16/revert"]
  btnConfigureUpdate.Picture = Picture["icon:/16/tools"]
 
  btnClose.Picture = Picture["icon:/small/quit"] ' small = 16px
 
  SVNSettings = New Settings
  iSVNLastRevision = SVNSettings["Revision/LastRevision", 0]
  InstallSubversion()
 
  sSVNPfad = User.Home &/ "gb3_trunk"
  If Not Exist(sSVNPfad) Then
    Try Mkdir sSVNPfad
    If Error = True Then
      Message.Error("Fehler beim Anlegen des Ordners" & sSVNPfad)
      Return
    Endif ' Error = True?
  Endif ' Not Exist(SVNPfad?
 
  btnReconfUpdate.Enabled = False
  btnConfigureUpdate.Enabled = False
  btnMakeUpdate.Enabled = False
  btnMakeInstallUpdate.Enabled = False
 
End '  Form_Open

Nach der Installation der neuesten Revision von Gambas über SVN sind alle Button aktiviert worden und alle Icon zeigen sich von ihrer farbigen Seite:

Laufzeit

Abbildung 20.8.3.2: Formular zur Laufzeit

Finden Sie im Bestand von Gambas keine Icon mit geeigneten Symbolen, dann können Sie

  • geeignete Icon zum Beispiel in den Projektordner Symbols einfügen.
  • sich das kleine Bild mit dem gewünschten Symbol nach einem Klick mit der rechten Maustaste auf Daten im Projekt neu anlegen. Es öffnet sich im Kontextmenü eine Menüliste mit Neu> Bild, das Sie aktivieren. Im Dialog unter 'Neu' vergeben Sie einen Bildnamen und legen bei den Optionen die Bildgröße auf geeignete 16×16 fest. Den Bildtyp lassen Sie unverändert (→ Bildextension .png). Wählen Sie dagegen 'Existent', eröffnet sich die Möglichkeit nach einem geeigneten Bild mit Symbol zu suchen und es als neues Icon in Ihr Projekt einzubinden.

Download

Die Website verwendet zwei temporäre Session-Cookies. Diese technisch notwendigen Cookies werden gelöscht, wenn der Web-Browser geschlossen wird! Informationen zu Cookies erhalten Sie in der Datenschutzerklärung.
k20/k20.8/start.txt · Zuletzt geändert: 20.06.2016 (Externe Bearbeitung)

Seiten-Werkzeuge