Hi Experts.
I want to repeat a text with current date and time to cover whole screen.
Wondering if there is any loop function to do that.
THIS IS SAMPLE TEXT TO SHOW
Tuesday, 2018-04-18 10:10 AM
Cheers
It is currently April 19th, 2024, 3:00 am
repeating a text to cover whole page
-
- Posts: 4
- Joined: April 17th, 2018, 7:44 am
-
- Rainmeter Sage
- Posts: 5391
- Joined: April 12th, 2012, 9:40 pm
- Location: Cedar Point, Ohio, USA
Re: repeating a text to cover whole page
No, there is no loop function in Rainmeter to create multiple meters.eronic wrote:Hi Experts.
I want to repeat a text with current date and time to cover whole screen.
Wondering if there is any loop function to do that.
THIS IS SAMPLE TEXT TO SHOW
Tuesday, 2018-04-18 10:10 AM
Cheers
:: My DA Gallery :: Rainmeter DA Gallery :: Rainmeter Workshops :: Rainmeter Documentation :: BBCode Guide ::
-
- Posts: 4
- Joined: April 17th, 2018, 7:44 am
Re: repeating a text to cover whole page
Hey Mate thanks for your reply
Any way to accomplish that?
Any way to accomplish that?
-
- Rainmeter Sage
- Posts: 5391
- Joined: April 12th, 2012, 9:40 pm
- Location: Cedar Point, Ohio, USA
Re: repeating a text to cover whole page
In order to display the same item multiple times, you would need to duplicate the original meters, give them a unique name, and position them relatively across and down the screen. For different resolutions, you would need to modify the font size and/or X and Y positions.eronic wrote:Hey Mate thanks for your reply
Any way to accomplish that?
This works for a 1366x768 resolution.
Code: Select all
[Rainmeter]
Update=1000
AccurateText=1
DynamicWindowSize=1
OnRefreshAction=[!Move "0" "0"]
; ========= Variables ==========
[Variables]
; ========= Measures ==========
[MeasureTime]
Measure=Time
Format=%A, %Y-%m-%d %#I:%M %p
; Tuesday, 2018-04-18 10:10 AM
; ========= Meter Styles ==========
[TimeStyle]
FontColor=192,192,192
FontSize=36
X=15R
Y=r
; ========= Meters ==========
[MeterString1]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=0
[MeterString2]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString3]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString4]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString5]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString6]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString7]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString8]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString9]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString10]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString11]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString12]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString13]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString14]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString15]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString16]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString17]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString18]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString19]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString20]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString21]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString22]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString23]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString24]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString25]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString26]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString27]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString28]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
[MeterString29]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
X=0
Y=R
[MeterString30]
Meter=String
MeterStyle=TimeStyle
MeasureName=MeasureTime
:: My DA Gallery :: Rainmeter DA Gallery :: Rainmeter Workshops :: Rainmeter Documentation :: BBCode Guide ::
-
- Moderator
- Posts: 1251
- Joined: February 16th, 2012, 3:32 am
- Location: Berlin, Germany
Re: repeating a text to cover whole page
I think there is an utter misunderstanding of this
I am not quite sure what the OP wants to achieve.eronic wrote: repeat a text with current date and time to cover whole screen.
-
- Posts: 4
- Joined: April 17th, 2018, 7:44 am
Re: repeating a text to cover whole page
eclectic-tech wrote:In order to display the same item multiple times, you would need to duplicate the original meters, give them a unique name, and position them relatively across and down the screen. For different resolutions, you would need to modify the font size and/or X and Y positions.
This works for a 1366x768 resolution.Not something I would ever like on my desktop, but there you go!Code: Select all
[Rainmeter] Update=1000 AccurateText=1 DynamicWindowSize=1 OnRefreshAction=[!Move "0" "0"] ; ========= Variables ========== [Variables] ; ========= Measures ========== [MeasureTime] Measure=Time Format=%A, %Y-%m-%d %#I:%M %p ; Tuesday, 2018-04-18 10:10 AM ; ========= Meter Styles ========== [TimeStyle] FontColor=192,192,192 FontSize=36 X=15R Y=r ; ========= Meters ========== [MeterString1] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=0 [MeterString2] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString3] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString4] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString5] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString6] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString7] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString8] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString9] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString10] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString11] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString12] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString13] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString14] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString15] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString16] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString17] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString18] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString19] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString20] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString21] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString22] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString23] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString24] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString25] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString26] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString27] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString28] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime [MeterString29] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime X=0 Y=R [MeterString30] Meter=String MeterStyle=TimeStyle MeasureName=MeasureTime
Thanks mate, I have almost done the same thing.
-
- Posts: 4
- Joined: April 17th, 2018, 7:44 am
Re: repeating a text to cover whole page
the idea is to have a watermark on screen.Active Colors wrote:I think there is an utter misunderstanding of this
I am not quite sure what the OP wants to achieve.
so text is needed to be repeated to fill the whole screen.
-
- Rainmeter Sage
- Posts: 16144
- Joined: October 11th, 2010, 6:27 pm
- Location: Gheorgheni, Romania
Re: repeating a text to cover whole page
I think a lua script could be used to achieve something like you'd like. As eclectich-tech said, natively Rainmeter can't do this (it definitely is not a programming language, so it doesn't support looping), but because Lua is a programing language, it can be used to create a loop.eronic wrote:I want to repeat a text with current date and time to cover whole screen.
Try the following codes:
First create a skin, with the following code:
Code: Select all
[Rainmeter]
Update=16
OnRefreshAction=[!Move "0" "0"]
DynamicWindowSize=1
[Variables]
[MeasureLua]
Measure=Script
ScriptFile=#@#MyLua.lua
[MeasureTime]
Measure=Time
Format=%A, %Y-%m-%d %#I:%M %p
[MeasureHeight]
Measure=Calc
Formula=[MeterString:H]
IfCondition=(#CURRENTSECTION#>=#WORKAREAHEIGHT#)
IfTrueAction=[!DisableMeasure "MeasureLua"][!DisableMeasure "MeasureTime"][!SetOption MeterString UpdateDivider "-1"][!UpdateMeter "MeterString"]
DynamicVariables=1
[MeterString]
MeasureName=MeasureTime
Meter=STRING
X=5
Y=5
W=(#WORKAREAWIDTH#-10)
ClipString=1
FontColor=220,220,220
FontSize=18
FontFace=Segoe UI
StringStyle=BOLD
StringAlign=LEFT
AntiAlias=1
Text=%1
Code: Select all
function Initialize()
Str = ''
end
function Update()
Str = Str..' %1'
SKIN:Bang('!SetOption', 'MeterString', 'Text', Str)
end
The height of the [MeterString] meter is continually compared with the height of the work area (#WORKAREAHEIGHT# variable). Once the height of the meter reaches the height of the screen, the measures are disabled and the meter is paused (setting its UpdateDivider to -1).
The disadvantage of this code is the used low Update value. For a first try this is ok, but if you find this code useful enough, we can rewrite it a bit, to use the default update value and an ActionTimer plugin measure, to set the string appropriately. Probably this would be a much better approach, having more advantages.
So, does the above code working well?