Seite 1 von 2

Farbeänderung einer ganzen Gadget Zeile ???

Verfasst: 12.10.2006 23:58
von sebsch80
Hallo,

muß ich wie in meinem Code nach jedem StrinGadget() die Farbe angeben oder ist es möglich die Farbe für diese gesamte Zeile mit einem Befehl zu wählen.

Code: Alles auswählen

If OpenWindow(0,100,100,610,120,"Fussball-Tipp",#PB_Window_SystemMenu|#PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))

StringGadget (0,5,14,60,14,"Spiel",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (0,#PB_Gadget_BackColor,$000000)
SetGadgetColor (0,#PB_Gadget_FrontColor,$0000FF)

StringGadget (1,70,14,50,14,"1",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (1,#PB_Gadget_BackColor,$000000)
SetGadgetColor (1,#PB_Gadget_FrontColor,$0000FF)

StringGadget (2,130,14,50,14,"2",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (2,#PB_Gadget_BackColor,$000000)
SetGadgetColor (2,#PB_Gadget_FrontColor,$0000FF)

StringGadget (3,190,14,50,14,"3",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (3,#PB_Gadget_BackColor,$000000)
SetGadgetColor (3,#PB_Gadget_FrontColor,$0000FF)

StringGadget (4,250,14,50,14,"4",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (4,#PB_Gadget_BackColor,$000000)
SetGadgetColor (4,#PB_Gadget_FrontColor,$0000FF)

StringGadget (5,310,14,50,14,"5",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (5,#PB_Gadget_BackColor,$000000)
SetGadgetColor (5,#PB_Gadget_FrontColor,$0000FF)

StringGadget (6,370,14,50,14,"6",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (6,#PB_Gadget_BackColor,$000000)
SetGadgetColor (6,#PB_Gadget_FrontColor,$0000FF)

StringGadget (7,430,14,50,14,"7",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (7,#PB_Gadget_BackColor,$000000)
SetGadgetColor (7,#PB_Gadget_FrontColor,$0000FF)

StringGadget (8,490,14,50,14,"8",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (8,#PB_Gadget_BackColor,$000000)
SetGadgetColor (8,#PB_Gadget_FrontColor,$0000FF)

StringGadget (9,550,14,50,14,"9",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
SetGadgetColor (9,#PB_Gadget_BackColor,$000000)
SetGadgetColor (9,#PB_Gadget_FrontColor,$0000FF)

EndIf

Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
:freak:

Verfasst: 13.10.2006 00:02
von Kaeru Gaman
grundsätzlich könntest du das in eine proc* packen, und diese mehrfach aufrufen.
ob es einen API-Call gibt, der standard-werte ändern kann, ist mir nicht momentan.

(* oder macro)

Verfasst: 13.10.2006 00:03
von AND51
Neiiiiiiiiin, tu's nicht! Ein Makro ist hier angebrachter und schneller! :wink:

Verfasst: 13.10.2006 00:05
von Kaeru Gaman
ich war schneller. war ich auch angebracht? und wenn ja, woran? ;)

Verfasst: 13.10.2006 00:07
von ts-soft

Code: Alles auswählen

If OpenWindow(0,100,100,610,120,"Fussball-Tipp",#PB_Window_SystemMenu|#PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0))

  StringGadget (0,5,14,60,14,"Spiel",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  StringGadget (1,70,14,50,14,"1",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  StringGadget (2,130,14,50,14,"2",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  StringGadget (3,190,14,50,14,"3",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  StringGadget (4,250,14,50,14,"4",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  StringGadget (5,310,14,50,14,"5",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  StringGadget (6,370,14,50,14,"6",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  StringGadget (7,430,14,50,14,"7",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  StringGadget (8,490,14,50,14,"8",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  StringGadget (9,550,14,50,14,"9",#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly)
  
  For I = 0 To 9
    SetGadgetColor (I,#PB_Gadget_BackColor,$000000)
    SetGadgetColor (I,#PB_Gadget_FrontColor,$0000FF)
  Next
EndIf

Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow

Verfasst: 13.10.2006 00:08
von sebsch80
Sorry leute kann mir vorstellen das das für euch grauenvoll anzusehen ist aber ich bin halt Anfänger und weiß es nicht besser.

Die "Hilfe" ist zwar momentan mein bester Freund aber wenn ihr mir mal ein kurzes Beispiel zu euren Tipps geben könntet würde ich mir viel Zeit sparen.

:roll:

Verfasst: 13.10.2006 00:09
von ts-soft
Schon geschehen :wink:

Verfasst: 13.10.2006 00:11
von AND51
In der Kürze liegt die Würze! :) Kürziger, ähhh, würziger geht es demnach kaum:

Code: Alles auswählen

If OpenWindow(0,100,100,777,120,"Fussball-Tipp",#PB_Window_SystemMenu|#PB_Window_ScreenCentered) And CreateGadgetList(WindowID(0)) 


Macro Neues_Gadget(ID, xKoordinate, Text)
	StringGadget(ID,xKoordinate,14,50,14,Text,#PB_String_BorderLess|#PB_Text_Center|#PB_String_ReadOnly) 
	SetGadgetColor(ID,#PB_Gadget_BackColor,$000000) 
	SetGadgetColor(ID,#PB_Gadget_FrontColor,$0000FF)
EndMacro

Neues_Gadget(0, 5, "Spiel")
For n=1 To 9
	Neues_Gadget(n, 70*n, Str(n))
Next n

EndIf 

Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
Ich musste nur das Fenster breiter machen, damit der 9. Knopf nicht fehlt. :freak:

So viel zum Thema Makro ;-)

Verfasst: 13.10.2006 00:12
von Kaeru Gaman
yo, ts, jetzt sind wir quitt, diesmal hab ich den wald übersehen... :lol: ;) :D

Verfasst: 13.10.2006 00:14
von sebsch80
Hey super danke vielmals.

Kannst mir jetzt noch erklären wie er von der Schleife For I = 0 To 9 auf die Fenster 0 bis 9 schliest? Also woher weiß das Prog das diese Fenster gemeint sind?

For I = 0 To 9
SetGadgetColor (I,#PB_Gadget_BackColor,$000000)
SetGadgetColor (I,#PB_Gadget_FrontColor,$0000FF)
Next