Ikarus1969 raised an interesting possibility so you can check if that's the case too, but to give a "face" to my explanation earlier, here's the code I tested ever since mentioning the IfConditionMode in this thread (I got rid of all the comments, to make the code cleaner):
Code: Select all
[Rainmeter]
Update=1000
DynamicWindowSize=1
[MeasureTime]
Measure=Time
Format=%H:%M:%S
[MeasureMorningEvening]
Measure=Time
Format=%H
IfCondition=MeasureMorningEvening < 12
IfTrueAction=[!SetOption MeterWelcome Text "Guten Morgen"]
IfCondition2=MeasureMorningEvening >= 12
IfTrueAction2=[!SetOption MeterWelcome Text "Guten Tag"]
IfCondition3=MeasureMorningEvening >= 18
IfTrueAction3=[!SetOption MeterWelcome Text "Guten Abend"]
IfConditionMode=1
[MeterTime]
Meter=String
MeasureName=MeasureTime
FontColor=255,153,0
FontSize=56
FontFace=Roboto
AntiAlias=1
W=310
H=85
X=136
Y=28R
StringAlign=CenterCenter
ClipString=1
[MeterWelcome]
Meter=String
MeasureName=MeasureWindowsVersion
FontColor=255,255,255
FontSize=20
AntiAlias=1
FontFace=Lato Bold
W=270
H=40
X=135
Y=105
StringAlign=CenterCenter
ClipString=1
You don't even need to wait a whole day to test if it works, just change the time or the hour from Control Panel > Date And Time and see what message is displayed by the skin. After you're done with the testing, you can easily synchronize with an online atomic clock (don't know about Win 11, but it works for me on Win 10):
TimeSync.jpg
Alternatively, if for some reason you don't want to use IfConditionMode=1 in that measure, you could write those conditions in a more precise way that prevents them from "overlapping" each other, e.g.:
Code: Select all
[Rainmeter]
Update=1000
DynamicWindowSize=1
[MeasureTime]
Measure=Time
Format=%H:%M:%S
[MeasureMorningEvening]
Measure=Time
Format=%H
IfCondition=(MeasureMorningEvening >= 0) && (MeasureMorningEvening < 12)
IfTrueAction=[!SetOption MeterWelcome Text "Guten Morgen"]
IfCondition2=(MeasureMorningEvening >= 12) && (MeasureMorningEvening < 18)
IfTrueAction2=[!SetOption MeterWelcome Text "Guten Tag"]
IfCondition3=(MeasureMorningEvening >= 18) && (MeasureMorningEvening <= 23)
IfTrueAction3=[!SetOption MeterWelcome Text "Guten Abend"]
[MeterTime]
Meter=String
MeasureName=MeasureTime
FontColor=255,153,0
FontSize=56
FontFace=Roboto
AntiAlias=1
W=310
H=85
X=136
Y=28R
StringAlign=CenterCenter
ClipString=1
[MeterWelcome]
Meter=String
MeasureName=MeasureWindowsVersion
FontColor=255,255,255
FontSize=20
AntiAlias=1
FontFace=Lato Bold
W=270
H=40
X=135
Y=105
StringAlign=CenterCenter
ClipString=1
The above will use
the && aka the logical AND operator to set the Text in MeterWelcome only / strictly if the hour belongs to the corresponding interval. In your original code, if the hour was, for example, 19, then it matched both IfCondition2 and IfCondition3 - which is what I meant by "overlapping" and which represented the root cause of your incorrect message in the skin, given the way how IfCondition works by default when IfConditionMode=1 is not present.
You do not have the required permissions to view the files attached to this post.