Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > AutoIt
You last visited: Today at 01:58

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

Advertisement



[Frage] If...Then...Endif

Discussion on [Frage] If...Then...Endif within the AutoIt forum part of the Coders Den category.

Reply
 
Old   #1
 
RettAss's Avatar
 
elite*gold: 20
Join Date: Jan 2010
Posts: 489
Received Thanks: 1,647
[Frage] If...Then...Endif

Hallo,

Hab da ein problem und zwar will ich das sich ne msgbox öffnet wenn eine gewisse uhrzeit und datum erreicht ist, die in einer listbox stehen:

PHP Code:
        $_hb_date1 GUICtrlRead($lbl_date)
    
$_fw_date1 GUICtrlRead($lb_fw_date)
    
$_fw_time1 GUICtrlRead($lb_fw_time
    
$_hb_time1 GUICtrlread($lbl_uhrzeit)
                    
    If 
$_hb_time1 $_hb_date1 $_fw_time1 $_fw_date1  Then
                MsgBox
(64,"","Test")
                Endif 
$lbl_Uhrzeit ist meine systemzeit die in meiner GUI läufti
$lb_fw_time st keine festgelegte uhrzeit sondern kann auch geändert werden
$lbl_datum ist das aktuelle datum, das ich auf der GUI stehen hab
$lb_fw_date ist kein festgelegtes datum sondern kann auch geändert werden

klappt nur nicht so wie es soll

(MsgBox ist nur zum test, später soll sich an der stelle eine progressbar öffnen, wenn das if...then klappt, nur so am rande)


Mfg
RettAss is offline  
Old 12/10/2010, 13:01   #2
 
ZeraPain's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 360
Received Thanks: 249
in autoit nimmt man statt && das wort and bei if anweisungen
ZeraPain is offline  
Old 12/10/2010, 13:27   #3
 
RettAss's Avatar
 
elite*gold: 20
Join Date: Jan 2010
Posts: 489
Received Thanks: 1,647
Quote:
Originally Posted by ZeraPain View Post
in autoit nimmt man statt && das wort and bei if anweisungen
ok danke, gut zu wissen, aber es funktioniert trotzdem noch nicht.
RettAss is offline  
Old 12/10/2010, 13:34   #4
 
ZeraPain's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 360
Received Thanks: 249
naja es kommt darauf an wie deine datums- und zeitlabel aussehen.

wenn lb_fw_date und lb_fw_time festgelegte zeitpunkte sind, bei denen etwas passieren soll, dann könntest du es so machen:

Code:
If GUICtrlRead($lb_fw_date) = @MDAY & "." & @MON & "." & @YEAR & "." And GUICtrlRead($lb_fw_time) = @HOUR & ":" & @MIN Then
	MsgBox(0,0,0)
EndIf
müsstest mal ein beispiel schreiben was in deinen labels steht ;-)

andernfalls, wenn du deine systemzeit auch immer updatest und beide das gleiche format haben würde es so aussehen:

Code:
If GUICtrlRead($lbl_date) = GUICtrlRead($lb_fw_date) And GUICtrlread($lbl_uhrzeit) = GUICtrlRead($lb_fw_time) Then
	MsgBox(0,0,0)
EndIf
ZeraPain is offline  
Thanks
1 User
Old 12/10/2010, 13:44   #5
 
RettAss's Avatar
 
elite*gold: 20
Join Date: Jan 2010
Posts: 489
Received Thanks: 1,647
Quote:
Originally Posted by ZeraPain View Post
naja es kommt darauf an wie deine datums- und zeitlabel aussehen.

wenn lb_fw_date und lb_fw_time festgelegte zeitpunkte sind, bei denen etwas passieren soll, dann könntest du es so machen:

Code:
If GUICtrlRead($lb_fw_date) = @MDAY & "." & @MON & "." & @YEAR & "." And GUICtrlRead($lb_fw_time) = @HOUR & ":" & @MIN Then
	MsgBox(0,0,0)
EndIf
müsstest mal ein beispiel schreiben was in deinen labels steht ;-)

andernfalls, wenn du deine systemzeit auch immer updatest und beide das gleiche format haben würde es so aussehen:

Code:
If GUICtrlRead($lbl_date) = GUICtrlRead($lb_fw_date) And GUICtrlread($lbl_uhrzeit) = GUICtrlRead($lb_fw_time) Then
	MsgBox(0,0,0)
EndIf
Datum: 10.12.2010
Uhrzeit: 13:38:20 (wird geupdatet mit Adlibregister)

Sind beides Label

PHP Code:
While 1
    $msg 
GUIGetMsg(1)
    Switch 
$msg[1]
        Case 
$Settings
            
Switch $msg[0]
                Case  -
3
                    
Exit
Case 
$Start
GUICtrlsetdata
($lbl_datum_NowDate())
AdlibRegister("_NowTime1",500)

EndSwitch

Wend

Func _NowTime1
()
    
GUICtrlsetdata($lbl_uhrzeit_NowTime(5))
    
Endfunc 
werde mal das 2. Bsp. eben probieren
RettAss is offline  
Old 12/10/2010, 13:57   #6
 
RettAss's Avatar
 
elite*gold: 20
Join Date: Jan 2010
Posts: 489
Received Thanks: 1,647
Hmm hat nicht funktioniert

$lb_fw_time und $lb_fw_date werden vom entgültigen nutzer des programms erstellt, also sind nicht immer gleich

$lbl_uhrzeit und $lbl_datum ändern sich auch (zeit ändert sich jede sek. und datum eben alle 24h)

(sry für doppelpost)
RettAss is offline  
Old 12/10/2010, 14:11   #7
 
elite*gold: 0
Join Date: Jul 2009
Posts: 2,241
Received Thanks: 848
Date.au3 ist doch klasse oô

Code:
#include <Date.au3>

$box = InputBox("","Example: 1.2.1999")

$timesys = _Date_Time_GetSystemTime()
$get = _Date_Time_SystemTimeToArray($timesys)

;    [0] - Month
;    [1] - Day
;    [2] - Year
;    [3] - Hour
;    [4] - Minutes
;    [5] - Seconds
;    [6] - Milliseconds
;    [7] - Day of week

$datesys = String($get[1] & "." & $get[0] & "." & $get[2])

If $box = $datesys Then
	MsgBox(0,"","Success")
Else
	MsgBox(0,"","Wrong date")
EndIf
mipez is offline  
Thanks
1 User
Old 12/10/2010, 14:45   #8
 
RettAss's Avatar
 
elite*gold: 20
Join Date: Jan 2010
Posts: 489
Received Thanks: 1,647
Quote:
Originally Posted by mipez View Post
Date.au3 ist doch klasse oô

Code:
#include <Date.au3>

$box = InputBox("","Example: 1.2.1999")

$timesys = _Date_Time_GetSystemTime()
$get = _Date_Time_SystemTimeToArray($timesys)

;    [0] - Month
;    [1] - Day
;    [2] - Year
;    [3] - Hour
;    [4] - Minutes
;    [5] - Seconds
;    [6] - Milliseconds
;    [7] - Day of week

$datesys = String($get[1] & "." & $get[0] & "." & $get[2])

If $box = $datesys Then
	MsgBox(0,"","Success")
Else
	MsgBox(0,"","Wrong date")
EndIf
Versteh ich jetzt net so ganz, zeit und datum dazustelln, das hab ich ja, mein problem ist, das wenn datum und uhrzeit ein gewissen (wert, der nicht festgelegt ist) erreichen, soll sich ne msgbox öffnen. siehe post1. Mit dem Script kann ich grad gar nix anfangen. Trotzdem danke für die mühe
RettAss is offline  
Old 12/10/2010, 15:13   #9
 
RettAss's Avatar
 
elite*gold: 20
Join Date: Jan 2010
Posts: 489
Received Thanks: 1,647
Quote:
Originally Posted by ZeraPain View Post

Code:
If GUICtrlRead($lbl_date) = GUICtrlRead($lb_fw_date) And GUICtrlread($lbl_uhrzeit) = GUICtrlRead($lb_fw_time) Then
	MsgBox(0,0,0)
EndIf
Ok Astrein so hats geklappt, hatte es nur unter dem falschen EndSwitsch stehen, da ich 2 GUIs im script hab, vielen dank für die Hilfe


€dit: Eine Frage hätt ich da grad noch zur Progressbar, kann man ner progressbar sagen wie lange sie laufen soll??? Also z.b. 30min. angeben und dann läuft die 30min. von 0-100%??? hab unter google grad nix sinnvolles gefunden.
RettAss is offline  
Old 12/19/2010, 00:00   #10
 
elite*gold: 9
Join Date: Dec 2009
Posts: 1,071
Received Thanks: 819
PHP Code:
$sekunden=1800 eine Halbe Stunde

For $i=1 To $sekunden
    Sleep
(1000)
    
ProgressSet($i)
Next 
So vielleicht?
.Infinite is offline  
Old 12/19/2010, 01:23   #11
 
ZeraPain's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 360
Received Thanks: 249
wohl nicht.

1. sollte man progressset dabei nicht verwenden
2. nach 100 sekunden wärst du bei 100%
3. passt das wohl nicht in sein script rein
ZeraPain is offline  
Old 12/19/2010, 11:43   #12
 
elite*gold: 9
Join Date: Dec 2009
Posts: 1,071
Received Thanks: 819
Quote:
sollte man progressset dabei nicht verwenden
- Warum denn nicht? Ist doch einfacher als immer mit GuiCtrlSetData()

Quote:
nach 100 sekunden wärst du bei 100%
- Schreib halt ProgressSet($i/$sekunden*100) dann klappts....

Quote:
passt das wohl nicht in sein script rein
- Ist doch genau das, was er wollte, oder? Ich weiß auch nicht, warum er ne Progressbar von der Zeit abhängig macht und nicht von einem bestimmten Vorgang, aber das ist ja sein Sache...
.Infinite is offline  
Old 12/19/2010, 12:51   #13
 
ZeraPain's Avatar
 
elite*gold: 0
Join Date: Jan 2010
Posts: 360
Received Thanks: 249
guicrtlsetdata ist sinnvoller, da man dabei das handle angeben kann.
wenn du den ersten post gelesen hättest, dann wüsstest du was er machen will und dass eine for schleife da nicht passend ist. (außerdem eher ungenau)
ZeraPain is offline  
Old 12/19/2010, 13:50   #14
 
elite*gold: 9
Join Date: Dec 2009
Posts: 1,071
Received Thanks: 819
Quote:
guicrtlsetdata ist sinnvoller, da man dabei das handle angeben kann.
- Wenn man nur eine Progressbar hat, isses aber einfacher...

Quote:
wenn du den ersten post gelesen hättest[...]
- Den habe ich sehr wohl gelsesen. Allerdings bezog sich meine Antwort auf Post #9:
Quote:
Eine Frage hätt ich da grad noch zur Progressbar, kann man ner progressbar sagen wie lange sie laufen soll??? Also z.b. 30min. angeben und dann läuft die 30min. von 0-100%??? hab unter google grad nix sinnvolles gefunden.
Quote:
außerdem eher ungenau
- Ist Genauigkeit bei einer Progressbar, die sowieso nur 100 Balken hat denn wichtig?

Btw: Quotes FTW!
.Infinite is offline  
Reply


Similar Threads Similar Threads
Frage zum 173mt2 geht net regestrieren wegen Zeichnung oder ist das frage.
04/02/2009 - Metin2 Private Server - 2 Replies
es geht einfach net.kann jemand helfen oder übersetzung geben bitte.



All times are GMT +1. The time now is 02:00.


Powered by vBulletin®
Copyright ©2000 - 2025, 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 ©2025 elitepvpers All Rights Reserved.