It is currently August 19th, 2019, 2:27 am

Rainmeter wallpaper problems

Help with creating, editing & fixing problems with skins
sockeater
Posts: 16
Joined: July 30th, 2019, 2:43 pm

Rainmeter wallpaper problems

sockeater » July 30th, 2019, 3:12 pm

Hi, I recently got interested in rainmeter again due to having a new computer and being able to use the software smoothly.

I want to create multiple layouts for my desktop theme depending on my mood and such. My goal here is that I can switch between layouts without worrying about changing my wallpaper manually everytime I switch layouts.

So, I attempted to create a background that periodically changes but I'm running into issues.
First issue is that when I load my skin, the image is always at the front and I have to manually set it to be on the background using right click. Is there any way for me to automatically set it on the background?

Next problem is that my icons and taskbar(this one is less important) are hidden because of the image, is there any to bring the icons in front of the wallpaper?

I guess the last problem(Even though, I haven't even begun to try to figure out how to go about this because I was trying to fix the previous problems) is, how can I make it so that my background changes every 10 minutes or so?

Thanks for looking and hoping to hear from you all!
User avatar
balala
Rainmeter Sage
Posts: 8534
Joined: October 11th, 2010, 6:27 pm
Location: Gheorgheni, Romania

Re: Rainmeter wallpaper problems

balala » July 30th, 2019, 3:32 pm

Let's take the questions one by one.
sockeater wrote:
July 30th, 2019, 3:12 pm
First issue is that when I load my skin, the image is always at the front and I have to manually set it to be on the background using right click. Is there any way for me to automatically set it on the background?
By background you mean an Image meter, showing and image? If so, add the following option to the [Rainmeter] section of the skin: OnRefreshAction=[!ZPos "-2"]. When the skin is refreshed (loaded), this option is executed and accordingly the skin is set to "On desktop", like you were right click it and set it to "On desktop", from the Position menu.
sockeater
Posts: 16
Joined: July 30th, 2019, 2:43 pm

Re: Rainmeter wallpaper problems

sockeater » July 30th, 2019, 3:42 pm

balala wrote:
July 30th, 2019, 3:32 pm
Let's take the questions one by one.

By background you mean an Image meter, showing and image? If so, add the following option to the [Rainmeter] section of the skin: OnRefreshAction=[!ZPos "-2"]. When the skin is refreshed (loaded), this option is executed and accordingly the skin is set to "On desktop", like you were right click it and set it to "On desktop", from the Position menu.
yes! This solves the first problem. I assume ZPos and numeric values refer to the position of the image where -2 is desktop and 0 is normal and 2 is top correct?
User avatar
balala
Rainmeter Sage
Posts: 8534
Joined: October 11th, 2010, 6:27 pm
Location: Gheorgheni, Romania

Re: Rainmeter wallpaper problems

balala » July 30th, 2019, 3:53 pm

sockeater wrote:
July 30th, 2019, 3:42 pm
I assume ZPos and numeric values refer to the position of the image where -2 is desktop and 0 is normal and 2 is top correct?
Correct: https://docs.rainmeter.net/manual/bangs/#ZPos
sockeater wrote:
July 30th, 2019, 3:12 pm
Next problem is that my icons and taskbar(this one is less important) are hidden because of the image, is there any to bring the icons in front of the wallpaper?
The previous solution should have to fix this too. Did it?
sockeater wrote:
July 30th, 2019, 3:12 pm
I guess the last problem(Even though, I haven't even begun to try to figure out how to go about this because I was trying to fix the previous problems) is, how can I make it so that my background changes every 10 minutes or so?
Please post the code you have so far.
User avatar
eclectic-tech
Rainmeter Sage
Posts: 3480
Joined: April 12th, 2012, 9:40 pm
Location: Cedar Point, Ohio, USA

Re: Rainmeter wallpaper problems

eclectic-tech » July 30th, 2019, 3:55 pm

Let me jump in with this comment...

You seem to be creating an image skin which will never be placed below Windows desktop items.
You could use the !SetWallpaper bang to set your desktop wallpaper from any skin.

Changing the wallpaper eliminates the image appearing above your desktop icons. Additionally, many users choose to hide their desktop icons in Windows, which leaves you with a more appealing display.

There are several ways to control the wallpaper used.

The simplest is to save the current wallpaper when you save your layout; it will be loaded when you load the layout. This saves you from having to set it yourself or create measures to change it. Check "Include current wallpaper" on the Layout tab when you save your layout. That lets you save the same skins with different background wallpapers.

To change your wallpaper at a given time period you could use a [Time] measure and IfCondition or OnChangeAction to fire the !SetWallpaper bang at specific intervals; every 10 minutes, every hour, etc. This code will change the desktop wallpaper every hour to numbered images named "ImageNo0.png", "ImageNo1.png", ImageNo2.png", etc.

Code: Select all

[Time]
Measure=Time
Format=%H
OnChangeAction=[!SetWallpaper "imageNo[&Time].png" Fill]
User avatar
jsmorley
Developer
Posts: 19374
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: Rainmeter wallpaper problems

jsmorley » July 30th, 2019, 3:59 pm

eclectic-tech wrote:
Just picking a nit, but with that image file naming convention, you would want:

Format=%#H

To eliminate leading zeros on the hour.
sockeater
Posts: 16
Joined: July 30th, 2019, 2:43 pm

Re: Rainmeter wallpaper problems

sockeater » July 30th, 2019, 4:13 pm

balala wrote:
July 30th, 2019, 3:53 pm
The previous solution should have to fix this too. Did it?
It did not. I still cannot see my icons. I can see the other rainmeter skins and my taskbar but icons are still underneath.

eclectic-tech wrote:
July 30th, 2019, 3:55 pm
Let me jump in with this comment...

You seem to be creating an image skin which will never be placed below Windows desktop items.
You could use the !SetWallpaper bang to set your desktop wallpaper from any skin.

Changing the wallpaper eliminates the image appearing above your desktop icons. Additionally, many users choose to hide their desktop icons in Windows, which leaves you with a more appealing display.

There are several ways to control the wallpaper used.

The simplest is to save the current wallpaper when you save your layout; it will be loaded when you load the layout. This saves you from having to set it yourself or create measures to change it. Check "Include current wallpaper" on the Layout tab when you save your layout. That lets you save the same skins with different background wallpapers.

To change your wallpaper at a given time period you could use a [Time] measure and IfCondition or OnChangeAction to fire the !SetWallpaper bang at specific intervals; every 10 minutes, every hour, etc. This code will change the desktop wallpaper every hour to numbered images named "ImageNo0.png", "ImageNo1.png", ImageNo2.png", etc.

Code: Select all

[Time]
Measure=Time
Format=%H
OnChangeAction=[!SetWallpaper "imageNo[&Time].png" Fill]
So just to clarify, if I were to save the current wallpaper to a certain theme, it is possible to change the wallpaper using !SetWallpaper?

Also, I have a question about the code you provided me.
1. %H format is for 24 hour correct?
2. [&Time] would represent the number of the hour of the clock and will change the wallpaper to imageNo7 if it was 7a.m. correct?
3. What does 'Fill' mean?
4. If I wanted to change it every 30 mins, would I use %H%M? If so, how would I format the image name? And how would I make it loop if I had, for example, 8 images but wanted to only use those 8 images in 30 min intervals?
User avatar
jsmorley
Developer
Posts: 19374
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: Rainmeter wallpaper problems

jsmorley » July 30th, 2019, 4:25 pm

Yes, %#H is 24-hour "hours", with no leading zeros. %#I would be the same thing for 12-hour time.

To do it on the half hour, you would likely want something like:

Code: Select all

[MeasureHour]
Measure=Time
Format=%#H

[MeasureMinute]
Measure=Time
Format=%#M
IfEqualValue=0
IfEqualAction=[!SetWallpaper "ImageNo[&MeasureHour].png" "Fill"]
User avatar
jsmorley
Developer
Posts: 19374
Joined: April 19th, 2009, 11:02 pm
Location: Fort Hunt, Virginia, USA

Re: Rainmeter wallpaper problems

jsmorley » July 30th, 2019, 4:31 pm

https://docs.rainmeter.net/manual/bangs/#SetWallpaper

To loop through 8 images on the half-hour, you might use:

Code: Select all

[Rainmeter]
Update=1000
AccurateText=1
DynamicWindowSize=1

[MeasureImageLoop]
Measure=Loop
StartValue=1
EndValue=8
UpdateDivider=-1

[MeasureMinute]
Measure=Time
Format=%#M
IfCondition=(MeasureMinute = 0) || (MeasureMinute = 30)
IfTrueAction=[!SetWallpaper "ImageNo[&MeasureImageLoop].png" "Fill"][!UpdateMeasure MeasureImageLoop]
|| means "OR" in a formula. https://docs.rainmeter.net/manual/formulas/#Logical

Then name your images ImageNo1.png ... ImageNo8.png

With this, you don't care what the hour is...

Just as an addendum to the earlier conversation, NEVER use a full-screen image meter as a desktop background. It is wrong in almost every possible way. It will be relatively CPU expensive (particularly if you are in any way sizing the image with W and H), and will always be in front of any icons of any kind, including shortcuts, on the Windows desktop.
sockeater
Posts: 16
Joined: July 30th, 2019, 2:43 pm

Re: Rainmeter wallpaper problems

sockeater » July 30th, 2019, 6:29 pm

jsmorley wrote:
July 30th, 2019, 4:31 pm
https://docs.rainmeter.net/manual/bangs/#SetWallpaper

To loop through 8 images on the half-hour, you might use:

Code: Select all

[Rainmeter]
Update=1000
AccurateText=1
DynamicWindowSize=1

[MeasureImageLoop]
Measure=Loop
StartValue=1
EndValue=8
UpdateDivider=-1

[MeasureMinute]
Measure=Time
Format=%#M
IfCondition=(MeasureMinute = 0) || (MeasureMinute = 30)
IfTrueAction=[!SetWallpaper "ImageNo[&MeasureImageLoop].png" "Fill"][!UpdateMeasure MeasureImageLoop]
|| means "OR" in a formula. https://docs.rainmeter.net/manual/formulas/#Logical

Then name your images ImageNo1.png ... ImageNo8.png

With this, you don't care what the hour is...

Just as an addendum to the earlier conversation, NEVER use a full-screen image meter as a desktop background. It is wrong in almost every possible way. It will be relatively CPU expensive (particularly if you are in any way sizing the image with W and H), and will always be in front of any icons of any kind, including shortcuts, on the Windows desktop.
Ok! In that case, I decided that I will use Windows 10 wallpaper slideshow instead. Question is, if I save current wallpaper to this theme, can I use a different slideshow for a different theme and when I load my current theme, will it load this particular slideshow or must I go to windows settings to adjust it? Sorry if that's confusing