Analoge CPU-Leistungs Anzeige

Anwendungen, Tools, Userlibs und anderes nützliches.
Benutzeravatar
R4z0r1989
Beiträge: 521
Registriert: 12.06.2005 18:06
Kontaktdaten:

Analoge CPU-Leistungs Anzeige

Beitrag von R4z0r1989 »

So hab heut mal 2 Stunden geopfert um(einige werden sagen: OMG 2 Stunden), und hab mal eine analoge CPU Anzeige bebastelt!

Ich würd gerne nur den Quelcode hier schreiben und nicht die exe upen!

warum?

naja hatte keinen Bock die Daten für meinen FTP zu suchen!

also hier:

Code: Alles auswählen

; PureBasic Visual Designer v3.95 build 1485 (PB4Code)

x1.f = 65
y1.f = 65
x2.f = 75
y2.f = 75
x3.f = 70
y3.f = 70
x9.f = 50
y9.f = 50
a.f = 0


;- Window Constants
;
Enumeration
  #Window_0
EndEnumeration

;- Gadget Constants
;
Enumeration
  #Image_0
EndEnumeration

;- Image Plugins

;- Image Globals

;- Catch Images
CreateImage(0,230,230)

;- Images


Procedure Open_Window_0()
  If OpenWindow(#Window_0, 216, 0, 250, 250, "New window ( 0 )",  #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
    If CreateGadgetList(WindowID(#Window_0))
      ImageGadget(#Image_0, 10, 10, 230, 230, ImageID(0))
      
    EndIf
  EndIf
EndProcedure


Open_Window_0()


Repeat
  
  If ElapsedMilliseconds() >= elapsed + 500
    way = (CPU - oldCPU.f) : Debug Str(CPU)+"-"+Str(oldCPU)+"="+Str(way)
    ste.f = way / 100 * 10
    CPU = CpuUsage()
    elapsed = ElapsedMilliseconds()
  EndIf
  
  If ElapsedMilliseconds() >= elapsed2 + 50
    oldCPU.f = oldCPU.f + ste.f
    d.f=(6.29-2.1)/100*oldCPU-0.79-2.1
    elapsed2 = ElapsedMilliseconds()
  EndIf
  
  If ElapsedMilliseconds() >= elapsed3 + 50
  StartDrawing(ImageOutput(0))
    x7.f = x3*Cos(d) + y3*Sin(d)
    y7.f = x3*Sin(d) - y3*Cos(d)
    
    
    Box(0,0,230,230,$FFFFFF)
    
    
    Circle(115,115,100,$000000)
    Circle(115,115,99,$FFFFFF)
    
    LineXY(115,115,115+x7,115+y7,$000000)
    
    LineXY(115+x1*Cos(3.41) + y1*Sin(3.41),115+x1*Sin(3.41) - y1*Cos(3.41),115+x2*Cos(3.41) + y2*Sin(3.41),115+x2*Sin(3.41) - y2*Cos(3.41),FFFFFF) ;   0
    LineXY(115+x1*Cos(3.83) + y1*Sin(3.83),115+x1*Sin(3.83) - y1*Cos(3.83),115+x2*Cos(3.83) + y2*Sin(3.83),115+x2*Sin(3.83) - y2*Cos(3.83),FFFFFF) ;  10
    LineXY(115+x1*Cos(4.25) + y1*Sin(4.25),115+x1*Sin(4.25) - y1*Cos(4.25),115+x2*Cos(4.25) + y2*Sin(4.25),115+x2*Sin(4.25) - y2*Cos(4.25),FFFFFF) ;  20
    LineXY(115+x1*Cos(4.66) + y1*Sin(4.66),115+x1*Sin(4.66) - y1*Cos(4.66),115+x2*Cos(4.66) + y2*Sin(4.66),115+x2*Sin(4.66) - y2*Cos(4.68),FFFFFF) ;  30
    LineXY(115+x1*Cos(5.08) + y1*Sin(5.08),115+x1*Sin(5.08) - y1*Cos(5.08),115+x2*Cos(5.08) + y2*Sin(5.08),115+x2*Sin(5.08) - y2*Cos(5.08),FFFFFF) ;  40
    LineXY(115+x1*Cos(5.50) + y1*Sin(5.50),115+x1*Sin(5.50) - y1*Cos(5.50),115+x2*Cos(5.50) + y2*Sin(5.50),115+x2*Sin(5.50) - y2*Cos(5.50),FFFFFF) ;  50
    LineXY(115+x1*Cos(5.92) + y1*Sin(5.92),115+x1*Sin(5.92) - y1*Cos(5.92),115+x2*Cos(5.92) + y2*Sin(5.92),115+x2*Sin(5.92) - y2*Cos(5.92),FFFFFF) ;  60
    LineXY(115+x1*Cos(0.05) + y1*Sin(0.05),115+x1*Sin(0.05) - y1*Cos(0.05),115+x2*Cos(0.05) + y2*Sin(0.05),115+x2*Sin(0.05) - y2*Cos(0.05),FFFFFF) ;  70
    LineXY(115+x1*Cos(0.47) + y1*Sin(0.47),115+x1*Sin(0.47) - y1*Cos(0.47),115+x2*Cos(0.47) + y2*Sin(0.47),115+x2*Sin(0.47) - y2*Cos(0.47),FFFFFF) ;  80
    LineXY(115+x1*Cos(0.89) + y1*Sin(0.89),115+x1*Sin(0.89) - y1*Cos(0.89),115+x2*Cos(0.89) + y2*Sin(0.89),115+x2*Sin(0.89) - y2*Cos(0.89),FFFFFF) ;    90
    LineXY(115+x1*Cos(1.31) + y1*Sin(1.31),115+x1*Sin(1.31) - y1*Cos(1.31),115+x2*Cos(1.31) + y2*Sin(1.31),115+x2*Sin(1.31) - y2*Cos(1.31),FFFFFF) ; 100
                                                                                              ;7.6


    
    
    DrawText(0,0 ,Str(CPU))
    

  StopDrawing()
  elapsed3 = ElapsedMilliseconds()
  EndIf
  
  SetGadgetState(#Image_0,ImageID(0))

Event = WindowEvent() 
  If Event = #PB_Event_CloseWindow
    Quit = 1 
  ElseIf Event = #PB_Event_Gadget Or Event = #PB_Event_Menu 
    
    Select EventGadget()
    
      Case #Image_0

    EndSelect 
  EndIf 

Delay(1)

Until Quit 
PS: Man braucht von der PBOSL die CPUusage Userlib!
Zuletzt geändert von R4z0r1989 am 29.09.2007 23:24, insgesamt 1-mal geändert.
Benutzeravatar
jpd
Beiträge: 380
Registriert: 14.02.2005 10:33

Beitrag von jpd »

Hi badboy99,


ist nett!
So hab heut mal 2 Stunden geopfert um(einige werden sagen: OMG 2 Stunden),
es waren aber zwei lange stunden .. :mrgreen:

Ciao
jpd
PB 5.10 Windows 7 x64
Benutzeravatar
R4z0r1989
Beiträge: 521
Registriert: 12.06.2005 18:06
Kontaktdaten:

Beitrag von R4z0r1989 »

danke...
So hab heut mal 2 Stunden geopfert um(einige werden sagen: OMG 2 Stunden),
es waren aber zwei lange stunden .. Mr. Green
haha /:->

Ne hat so lang gedauert weil ich in einer zeile nen fehler hatte und ich den ganzen code umgeschrieben hab bis ich ihn gefunden hab!

Wie wärs mal mit verbesserungsvorschlägen?
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Verbesserungsvorschläge

*1.Mach es kleiner.
*2.Oder mach es als Desktophintergrund wo das bild aktualisiert wird z.b.
Purebasic 5.0 32bit und 64 bit

I'm back from hell
Benutzeravatar
R4z0r1989
Beiträge: 521
Registriert: 12.06.2005 18:06
Kontaktdaten:

hmm

Beitrag von R4z0r1989 »

also desktophintergrund... ne das frisst und sieht auch noch extrem augenkrebs mässig aus!

ja ich wollt es kleiner machen!

ich will das und noch ein paar gefertigte sachen in ne vista ähnliche side bar einbaun!
Benutzeravatar
X0r
Beiträge: 2770
Registriert: 15.03.2007 21:47
Kontaktdaten:

Beitrag von X0r »

Bitte nicht solche Threadtitel.
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

> Bitte nicht solche Threadtitel.
wieso? wo is das prolem?
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Benutzeravatar
roherter
Beiträge: 1407
Registriert: 10.04.2005 18:58
Kontaktdaten:

Beitrag von roherter »

Kaeru Gaman hat geschrieben:> Bitte nicht solche Threadtitel.
wieso? wo is das prolem?
Der wurde bereits geändert.
Vorher hieß er irgendwie so "Habe mal 2 Stunden geopfert" oder so!
Purebasic 5.0 32bit und 64 bit

I'm back from hell
Kaeru Gaman
Beiträge: 17389
Registriert: 10.11.2004 03:22

Beitrag von Kaeru Gaman »

achso... verstehe.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Antworten