Farbiges ProgressBarGadget

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
kreeph
Beiträge: 98
Registriert: 24.02.2007 11:50

Farbiges ProgressBarGadget

Beitrag von kreeph »

Hallo Leute,
wie der Name schon sagt bin ich auf der Suche den Fortschritt im ProgressBarGadget z.B. grün wie der Smiley ( :mrgreen: ) statt dem normalen Blau darzustellen.
Hoffe es gibt eine Möglichkeit in 3.30. Danke schonmal!
Ich benutze PureBasic 3.30
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Du solltest eine ProgressBar malen, einfach grüne Boxes, sollte kein grosses
Problem darstellen :wink:

Die notwendigen 2DDrawing Befehle gibts auch in PB3.3
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Fluid Byte
Beiträge: 3110
Registriert: 27.09.2006 22:06
Wohnort: Berlin, Mitte

Beitrag von Fluid Byte »

Code: Alles auswählen

OpenWindow(0,0,0,300,200,#WS_OVERLAPPEDWINDOW | 1,"untitled")

Value = 75 : Width = 250

Repeat
	EventID = WaitWindowEvent()

	StartDrawing(WindowOutput())
	DrawingMode(4) : Box(20,20,Width,24)
	DrawingMode(0) : Box(22,22,Value * (Width - 4) / 100,20,RGB(110,150,50))
	DrawingMode(1) : FrontColor(255,255,255)
	Locate(Width/2,24) : DrawText(Str(Value) + "%")
	StopDrawing()
Until EventID = 16
Windows 10 Pro, 64-Bit / Outtakes | Derek
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Der Code von Fluid Byte sollte wohl für PB3.3 so aussehen:

Code: Alles auswählen

OpenWindow(0,0,0,300,200,#WS_OVERLAPPEDWINDOW | 1,"untitled")

Value = 75 : Width = 250

Repeat
   EventID = WaitWindowEvent()
   StartDrawing(WindowOutput())
   DrawingMode(4) : Box(20,20,Width,24)
   DrawingMode(0) : FrontColor(110,150,50) : Box(22,22,Value * (Width - 4) / 100,20)
   DrawingMode(1) : FrontColor(255,255,255)
   Locate(Width/2,24) : DrawText(Str(Value) + "%")
   StopDrawing()
Until EventID = 16
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
Sicro
Beiträge: 964
Registriert: 11.08.2005 19:08
Kontaktdaten:

Beitrag von Sicro »

Oder per WinAPI:

Code: Alles auswählen

#PBM_SETBARCOLOR = $409
ProgressBarGadget(0,10,30,250,30,0,100)
SendMessage_(GadgetID(0),#PBM_SETBARCOLOR,0,#Green)
Mfg DerProgger
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@kreeph
Meinst du, was Standard bei Win XP ist?
Bild

Wenn ja, aktiviere einfach bei Compiler Optionen "XP Skin Unterstützung aktivieren".
Wenn nein, dann die Beispiele, siehe oben.
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
kreeph
Beiträge: 98
Registriert: 24.02.2007 11:50

Beitrag von kreeph »

Huch (Bild) bei meinem PB ist sie standart blau...
aber der code von DerProgger klappt :D Danke!
edit: Was kann ich eigentlich noch statt

Code: Alles auswählen

SendMessage_(GadgetID(7),#PBM_SETBARCOLOR,0,#Green)
dem #Green verwenden?
oder kann ich die Farben in RGB angeben?
Ich benutze PureBasic 3.30
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@kreeph
Du kannst alle Farben benutzen.
Also entweder die Namen oder du kannst sie richtig angeben: http://www.purearea.net/pb/german/manua ... table.html

Einfach ein $ davor setzen, also Beispiel: $660033
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Benutzeravatar
ts-soft
Beiträge: 22292
Registriert: 08.09.2004 00:57
Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel
Wohnort: Berlin

Beitrag von ts-soft »

Oder hier: http://www.purebasic.fr/german/viewtopic.php?t=12595
Haben alle Farben einen Namen :wink:
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Bild
Benutzeravatar
RSBasic
Admin
Beiträge: 8047
Registriert: 05.10.2006 18:55
Wohnort: Gernsbach
Kontaktdaten:

Beitrag von RSBasic »

@ts-soft
Das sind ja viele Namen :o :lol: :allright:
Aus privaten Gründen habe ich leider nicht mehr so viel Zeit wie früher. Bitte habt Verständnis dafür.
Bild
Bild
Antworten