Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 18:14

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Label in einer Progressbar

Discussion on Label in einer Progressbar within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Label in einer Progressbar

Hi,

ich wollte ein Label in einer Progressbar machen, aber es wird leider nicht angezeigt weil die Progressbar darüber liegt. Kann man das iwie anders machen? Dass das Label "on top" ist? Und am Besten wäre es wenn der Hintergrund von dem Label druchsichtig wäre so das man die Grünen ladebalken sieht und die Label schrifft auch.

MfG Ludder231
Ludder231 is offline  
Old 12/25/2011, 13:28   #2
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
eig werden die controls doch immer in der reihenfolge angezigt, in welcher sie erstellt werden.

sollte eig keine probleme geben.
lolkop is offline  
Old 12/25/2011, 13:41   #3
 
Ludder231's Avatar
 
elite*gold: 0
Join Date: Aug 2010
Posts: 880
Received Thanks: 113
Quote:
Originally Posted by lolkop View Post
eig werden die controls doch immer in der reihenfolge angezigt, in welcher sie erstellt werden.

sollte eig keine probleme geben.
Hmm, stimmt. Und wie ist das mit dem durchsichtigen Hintergrund. Gibs sowas? Weil sonst sieht das doof aus...
Ludder231 is offline  
Old 12/25/2011, 14:25   #4
 
lolkop's Avatar
 
elite*gold: 280
Join Date: May 2007
Posts: 2,818
Received Thanks: 3,483
naja das geht ja einfach per GUICtrlSetBkColor($control, -2).

probleme wirst du aber bekommen, da progress bars ja langsam aktualisiert werden.
dh du setzt den wert, und die progressbar steigt/sinkt stetig zu diesem wert.

die sauberste variante hier wäre wohl ein overlay gui über dein eigentliches gui zu legen.

hier mal ein beispiel wie man das ganze sehr sauber lösen könnte:
Code:
#include <winapi.au3>
$gui=GUICreate('blubb', 200, 40, Default, Default, 0x10C80000)
$progress=GUICtrlCreateProgress(10, 10, 180, 20, 1)
$label = BuildOverlayLabel($gui, '0 %', 10, 13, 180, 20, 1)

Dim $percent=0, $timer=TimerInit()
Do
	$msg = GUIGetMsg()
	If TimerDiff($timer)>=100 And $percent<=99 Then
		$percent+=1
		$timer=TimerInit()
		GUICtrlSetData($progress, $percent)
		GUICtrlSetData($label, $percent&' %')
	EndIf
Until $msg=-3

Func BuildOverlayLabel($mainGui, $text, $x, $y, $width, $height, $style=Default, $exStyle=Default)
	Local $overlay = GUICreate('', $width, $height, $x, $y, 0x90000000, 0x00080040, $mainGui)
	GUISetBkColor(0xABCDEF, $overlay)
	_WinAPI_SetLayeredWindowAttributes($overlay, 0xABCDEF, 255)
	Local $label=GUICtrlCreateLabel($text, 0, 0, $width, $height, $style, $exStyle)
	GUICtrlSetBkColor(-1, -2)
	Return $label
EndFunc
lolkop is offline  
Thanks
2 Users
Old 01/13/2014, 00:06   #5
 
elite*gold: 0
Join Date: Feb 2010
Posts: 3
Received Thanks: 0
Thumbs up

Quote:
Originally Posted by lolkop View Post
naja das geht ja einfach per GUICtrlSetBkColor($control, -2).

probleme wirst du aber bekommen, da progress bars ja langsam aktualisiert werden.
dh du setzt den wert, und die progressbar steigt/sinkt stetig zu diesem wert.

die sauberste variante hier wäre wohl ein overlay gui über dein eigentliches gui zu legen.

hier mal ein beispiel wie man das ganze sehr sauber lösen könnte:
Code:
#include <winapi.au3>
$gui=GUICreate('blubb', 200, 40, Default, Default, 0x10C80000)
$progress=GUICtrlCreateProgress(10, 10, 180, 20, 1)
$label = BuildOverlayLabel($gui, '0 %', 10, 13, 180, 20, 1)

Dim $percent=0, $timer=TimerInit()
Do
	$msg = GUIGetMsg()
	If TimerDiff($timer)>=100 And $percent<=99 Then
		$percent+=1
		$timer=TimerInit()
		GUICtrlSetData($progress, $percent)
		GUICtrlSetData($label, $percent&' %')
	EndIf
Until $msg=-3

Func BuildOverlayLabel($mainGui, $text, $x, $y, $width, $height, $style=Default, $exStyle=Default)
	Local $overlay = GUICreate('', $width, $height, $x, $y, 0x90000000, 0x00080040, $mainGui)
	GUISetBkColor(0xABCDEF, $overlay)
	_WinAPI_SetLayeredWindowAttributes($overlay, 0xABCDEF, 255)
	Local $label=GUICtrlCreateLabel($text, 0, 0, $width, $height, $style, $exStyle)
	GUICtrlSetBkColor(-1, -2)
	Return $label
EndFunc
junge lolkop du hast es ja mal richtig drauf!
sass heute den halben tag um das zu verstehen, was hier steht xD

vielen dank.. endlich gehts weiter
31_D!4b10 is offline  
Old 01/13/2014, 14:09   #6
 
alpines's Avatar
 
elite*gold: 60
Join Date: Aug 2009
Posts: 2,256
Received Thanks: 815
Da du hier nicht viel gepostet hast möchte ich dich darauf hinweisen damit es sich nicht wiederholt.
Der Thread ist über 2 Jahre alt und dein Beitrag leistet null dazu, also bitte beim nächsten Mal nichts posten damit der Thread nicht unnötig nach oben gepusht wird. Einfach auf Thanks drücken und Ende.
alpines is offline  
Thanks
1 User
Reply


Similar Threads Similar Threads
Label in einer Koda Form umbenennen
04/12/2011 - AutoIt - 2 Replies
Hi, Ich wollte mal fragen ob es geht das man während eine Koda Form offen ist ein Label umbenennen kann? Z.bWhile 1 if ProcessExists("Game.exe") then "Label ändern" wend €: HAT SICH ERLEDIGT! :D
progressbar
07/22/2010 - AutoIt - 10 Replies
hab mal wieder ne kleine frage, undzwar will ich, wenn ich ein button drücke die progressbar sich jedesmal um 20erhöht, aber bekomm das iwie nicht hin ... in internet hab ich dazu nicht wirklich was gefunden.... mein bsp. code: #include <ButtonConstants.au3> #include <GUIConstantsEx.au3> #include <ProgressConstants.au3>
Progressbar
06/18/2010 - AutoIt - 2 Replies
$get1 = InetGet("...",$zgh & "\...") $inf1 = InetGetInfo($get1,0) Do GUICtrlSetData($Progress1,$inf1) Until InetGetInfo($get1,2) = True Also, die Progressbar bleibt leer und die GUI ist scheintot, aber es lädt die Datei... 1. Progressbar soll konstant zum Download sein. 2. GUI soll aktiv bleiben.
VB-Webbrowser mit ProgressBar
05/09/2010 - .NET Languages - 2 Replies
Hey Leute Ich bekomme es einfach nicht hin, das beim laden einer seite in meinem webbrowser der progressbar den ladefortschritt der seite zeigt die ich aufrufen möchte. kann mir jemand konkret erklären wie das klappt was oben steht? Danke
How to Make Progressbar
10/02/2009 - Coding Tutorials - 1 Replies
Visual Basics 6.0 - Progressbar Helloworld YouTube - Visual Basics 6.0 - Progressbar Helloworld How to Make a advanced progressbar in visual basic 2008 YouTube - How to Make a advanced progressbar in visual basic 2008



All times are GMT +1. The time now is 18:14.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.