Buchempfehlung
Windows System Programming
Windows System Programming
Das Kompendium liefert viele interessante Informationen zur Windows-Programmierung auf Englisch. [Mehr Infos...]
FreeBASIC-Chat
Es sind Benutzer im FreeBASIC-Chat online.
(Stand:  )
FreeBASIC bei Twitter
Twitter FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!

Referenz - PALETTE GET

Referenz-Navigation

 

Syntax A: PALETTE GET Index, Farbe
Syntax B: PALETTE GET Index, Rotwert, Grünwert, Blauwert
Syntax C: PALETTE GET USING ArrayName(idx)
Typ: Anweisung
Kategorie: Grafik

PALETTE GET speichert den Farbwert eines Palette-Eintrags in einer Variable, einem Array oder in drei einzelnen Speicherstellen.

Um die Palette-Einträge auszulesen, mussten bisher BefehlsreferenzeintragOUT und BefehlsreferenzeintragINP verwendet werden. PALETTE GET soll diese beiden Anweisungen ersetzen.
Indem ein Index angegeben wird, liefert PALETTE GET den zugehörigen BGR-Wert zurück und speichert ihn in einer Variable, oder es teilt ihn in seine Einzelfarben auf und speichert diese in drei Variablen (dann allerdings in der Reihenfolge rot, grün, blau). Wenn die komplette Palette kopiert werden soll, können ihre Elemente über PALETTE GET USING in ein Array kopiert werden.

PALETTE GET [USING] ist die Gegenfunktion zu BefehlsreferenzeintragPALETTE [USING]. Dort erhalten Sie weitere Informationen zum Aufbau der Farbpalette.

Beispiel:

DIM farbe AS INTEGER, rot AS INTEGER, gruen AS INTEGER, blau AS INTEGER, i AS INTEGER
DIM farben(15) AS INTEGER

SCREENRES 400, 300, 4   ' 16 indizierte Farben

PALETTE GET 1, farbe
PRINT "Der BGR-Farbwert von Farbe 1 ist &h"; HEX(farbe)
PRINT

PALETTE GET 2, rot, gruen, blau
PRINT "Farbe 2 setzt sich aus diesen Farben zusammen:"
PRINT "Rot:"; rot; " Gruen:"; gruen; " Blau:"; blau
PRINT

PALETTE GET USING farben(0)
PRINT "Alle Farben:"
FOR i = 0 TO 15
  IF i = 0 THEN
    COLOR 0, 15         ' schwarz auf weiß, da man es sonst nicht sieht
  ELSE
    COLOR i, 0          ' farbig auf schwarzem Hintergrund
  END IF
  PRINT "Farbe"; i; ": ";
  IF i < 10 THEN PRINT " ";
  PRINT "&h"; HEX(farben(i), 6)
NEXT

SLEEP

Unterschiede zu QB: neu in FreeBASIC

Unterschiede zu früheren Versionen von FreeBASIC: existiert seit FreeBASIC v0.14

Siehe auch:
BefehlsreferenzeintragPALETTE, BefehlsreferenzeintragSCREENRES, BefehlsreferenzeintragGrafik


Zusätzliche Informationen und Funktionen
  • Der Referenzeintrag wurde am 07.08.2007 von Redakteurnemored angelegt.
  • Die aktuellste Version wurde am 28.08.2012 von Redakteurnemored gespeichert.
  Versionen Versionen