Fortschrittsbalken

Stelle Fragen zur Programmierung mit Autohotkey

Moderator: jNizM

Boss55
Posts: 31
Joined: 09 Oct 2021, 12:50

Fortschrittsbalken

Post by Boss55 » 14 Feb 2024, 10:02

Haiio Community !

Folgende zeilen nuze ich innerhalb eines Scripts um einen Hinweis anzuzeigen, was auch alles funktioniert

Code: Select all

sleep 1000
Progress, b ctffffff cbffffff cw000000 w250 Cxy fs20 fm22 wm8000 ws8000 , Bitte warten !, Datenbank wird geöffnet, Tonträgerdatenbank, Arial
Progress, 50
sleep 10000
Der Fortschrittsbalken ist dabei statisch auf 50 %, was ucg nicht so prickelnd finde.
Wie kann ich es erreichen, das der sich langsam von 0 nach 100 bewegt ?
Ich have hier und auch in der Hilfe geucht, aber nix kapiert. :?
Zugegeben, Luxusproblem und nur Optik, bin aber für jede Hilfe und jeden Rat dankbar.

bye

gero
Posts: 171
Joined: 02 Oct 2013, 05:36

Re: Fortschrittsbalken

Post by gero » 16 Feb 2024, 09:04

Hat dein Script denn irgendwelche Werte, die ansteigen und die du abfragen kannst ?
Ein Progress ist ja nur die optische Darstellung von sich verändernden Werten.
Ich habe hier einen Progress-Dummy rumliegen ... reine Optik ohne was ... vielleicht nützt es dir ?

gruss
gero

Code: Select all

#NoEnv
#SingleInstance force
Gui,2:-caption +Alwaysontop +0x400000 +E0x200
Gui,2:margin,0,0
Gui,2:add,Progress,x0 y0 w300 h20  vPROGR +0x8 -smooth
Gui,2:show,Xcenter Y10 ,GimmickTIMER
SetTimer,TIMER,15
return

TIMER:
GuiControl,2: ,Progr, %A_TickCount%
T+=1
If (T=500)
	exitapp
return

ESC::
2GuiClose:
exitapp
return
oder so:

Code: Select all

#NoEnv
#SingleInstance force
Gui,2:-caption +Alwaysontop +0x400000 +E0x200
Gui,2:margin,0,0
Gui,2:add,Progress,x0 y0 w300 h20 c00FF00 vPROGR,
Gui,2:show,Xcenter Y10 ,GimmickTIMER
SetTimer,TIMER,40
return

TIMER:
T+=1
GuiControl,2: ,Progr, %T%
If (T=100)
	exitapp
return

ESC::
2GuiClose:
exitapp
return

garry
Posts: 3770
Joined: 22 Dec 2013, 12:50

Re: Fortschrittsbalken

Post by garry » 16 Feb 2024, 11:17

@gero danke für die guten Beispiele
Fortschrittbalken sieht schön aus, man kann auch eine primitive Lösung mit msgbox,Splashtext,Splashimage,Tooltip ... etc verwenden wenn die Dauer nicht bekannt ist
hatte manchmal verwendet, wenn ich z.B. in einem GUI einen Knopf gedrückt hatte ( msgbox für 1 Sekunde als Bestätigung dass der Knopf wirklich gedrückt wurde / oder tooltip verwendet )

Code: Select all

msgbox, 262208,Bitte warten !, Datenbank wird geöffnet...,2  ; - Anzeige alwaysontop für 2 Sekunden

gero
Posts: 171
Joined: 02 Oct 2013, 05:36

Re: Fortschrittsbalken

Post by gero » 16 Feb 2024, 14:49

@garry ... wenn du solche Gimmicks magst ... ich hätte da noch einen in der Mottenkiste:
Spoiler
;)

garry
Posts: 3770
Joined: 22 Dec 2013, 12:50

Re: Fortschrittsbalken

Post by garry » 17 Feb 2024, 04:10

@gero danke, gefällt mir auch
hier ein Beispiel mit splashimage , mann kann x y w h und Farbe angeben
wenn Dauer unbekannt ist : start> show splashimage ,wenn runwait beendet > splashimage OFF
;- https://www.speedtest.net/apps/cli ookla

Code: Select all

speedtestOokla:="D:\M_GARRY\PROGRAMME_SA\SPEED_TEST\ookla-speedtest-1.1.1-win64\speedtest.exe"
Splashimage,,b w600 h150 x100 Y400 CWsilver m9 b fs14 zh0,Internet-Speedtest running...
;Splashimage,,M b fs12 ctFFFF00 cwBlack x100 y400 ,Ookla Internet-Speedtest running...
runwait,%comspec% /c %speedtestOokla% --accept-license |clip,,hide
Splashimage, off

Boss55
Posts: 31
Joined: 09 Oct 2021, 12:50

Re: Fortschrittsbalken

Post by Boss55 » 18 Feb 2024, 11:28

Hallo gero & gary !
@gero
Vielen Dank für deine Mühe und sorry für das späte Feedback. Genau das siollte es sein, ein im Grunde überflüssiger Showeffekt, :lol:
Dein Script hat mich motiviert ein bißchen zu experimentieren, heraus kam dabei

Code: Select all

#SingleInstance, Force
Gui, Fortschrittsbalken:New, -Caption, +Border, -SysMenu, +AlwaysOnTop
Gui, Color, 000000,
Gui, Font, s20 cFFFFFF Arial bold
Gui, Add, Text,, Datenbank wird geöffnet !
Gui, Add, Text,, Bitte warten
maxRange := 16
Zaehler := 0
Gui, Add, Progress, xm w400 h20 c<silver Range0-%maxRange% -Smooth vMeinFortschritt, 0
Gui, Show
FortschrittGuiID := WinExist("A")
SetTimer, Fortschrittsintervall, 1000
Return

Fortschrittsintervall:
Gui, Fortschrittsbalken:Default ;>>>> Beachten
if (Zaehler < maxRange)
{
GuiControl, , MeinFortschritt, +1
;GuiControl, +Redraw, Fortschrittsbalken
Zaehler := Zaehler + 1
;MsgBox % Zaehler
}
else
{
SetTimer, Fortschrittsintervall, Off
WinClose, ahk_id %FortschrittGuiID%
}
Return
exit[/code
Funktioniert prima, nur was ich nicht gebacken bekommes, ist die beiden Textzeilen zu zentrieren, du kannst da bestimmt helfen.

@gary
Ja, so einen Blödsinn mag ich, der Gimmick aus der Mottenkiste gefäält mir.

Schönen Abend

gero
Posts: 171
Joined: 02 Oct 2013, 05:36

Re: Fortschrittsbalken

Post by gero » 18 Feb 2024, 12:16

Gut, dass ich ein wenig helfen konnte.
Texte kann man nur zentrieren, wenn auch deren Control-Breite definiert ist ... ;)

gruss
gero

Boss55
Posts: 31
Joined: 09 Oct 2021, 12:50

Re: Fortschrittsbalken

Post by Boss55 » 18 Feb 2024, 13:24

Hey gero !

Nun mal nicht untertreiben, das waren entscheidende Hilfen und wenn ich das jetzt lese, klingt das auch logisch. Trotzdem konnte ich an anderen Stellen nichts finden. Nur hier, in diesem coolen Forum mit seinen ebenso coolen Usern.

Also nochmals besten Dank, wünsche eine angenehme Woche

just me
Posts: 9464
Joined: 02 Oct 2013, 08:51
Location: Germany

Re: Fortschrittsbalken

Post by just me » 19 Feb 2024, 09:42

Moin,

wenn es nur um eine Aktivitätsanzeige geht, geht auch Folgendes:
PBS_MARQUEE (0x08) -> https://learn.microsoft.com/en-us/windows/win32/controls/progress-bar-control-styles
PBM_SETMARQUEE (0x040A) -> https://learn.microsoft.com/en-us/windows/win32/controls/pbm-setmarquee

Code: Select all

#NoEnv
SetBatchLines, -1
Gui, Fortschrittsbalken:New, +AlwaysOnTop +Border -Caption +LastFound
Gui, Color, Black
Gui, Margin, 20, 20
Gui, Font, s20 cFFFFFF Arial bold
Gui, Add, Text, xm w400 Center, Datenbank wird geöffnet!
Gui, Font, s16
Gui, Add, Text, xm w400 Center, Bitte warten ...
Gui, Add, Progress, xm w400 hp cBlack hwndHPB 0x08, 0 ; PBS_MARQUEE = 0x08
Gui, Show
PostMessage, 0x040A, 1, 0, , ahk_id %HPB% ; PBM_SETMARQUEE = 0x040A
Sleep, 10000
Gui, Fortschrittsbalken:Destroy
Return

Esc::ExitApp

gero
Posts: 171
Joined: 02 Oct 2013, 05:36

Re: Fortschrittsbalken

Post by gero » 19 Feb 2024, 12:34

@just me

... genial ... :D :thumbup:

gruss
gero

Post Reply

Return to “Ich brauche Hilfe”