Jump to content

Glass CMD for Windows Vista/Seven


komalo
 Share

Recommended Posts

  • Replies 100
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

as soon as you apply glass, the controls on it are like disabled. You can get around this by making a child window with disabled labels that are underlying the controls that shall be usable.

what you are talking about is a LayeredWindow with UpdateLayeredWindow applied on xp or vista

[font="Palatino Linotype"][size="3"]AutoIt Script Examples :[/size][/font][font="Palatino Linotype"][size="3"]_CaptureBehindWindowGlass CMD for Windows Vista/Seven[/size][/font][left][/left][font="Palatino Linotype"][size="3"]Non AutoIt Script programs : Border Skin - Aero Glass On XP[/size][/font]
Link to comment
Share on other sites

what you are talking about is a LayeredWindow with UpdateLayeredWindow applied on xp or vista

I'm not sure. I don't use anything with "Layered" when I use glass.

I make a normal GUI where I don't put any controls and the apply glass,

then I make a child UI with the controls which has $WS_POPUP, $WS_EX_MDICHILD + $WS_EX_TOOLWINDOW as styles and extended styles.

After that apply the VisibleControls-function to I that con be found somewhere in this forum (I forgot who made it and I'm too lazy to look right now)

But in order to be able to use the controls, they need to be on top of a disabled label, which looks very nice when they're framed:

Posted Image

[font="Courier New"]http://RomanK.hondadesigns.com[/font]
Link to comment
Share on other sites

what you are talking about is a LayeredWindow with UpdateLayeredWindow applied on xp or vista

Hmmmmm what I've been trying to figure out is how to extend the glass from the frame into the client area using DwmExtendFrameIntoClientArea() on a form that does not have a black background. I tried laying a Graphic on top of the form with the background color as it appears to the user, and letting the actual form be black. It looks near perfect, but even though I add controls on after the graphic, clicks don't work. Apparently because the Graphic is now the parent control instead of the form. I tried making a Group with no text. It didn't change color when I set the background color.

Seems like the fix should be inside whatever function calls DwmExtendFrameIntoClientArea() so that only the extended area is painted black. How to do it and have everything work I have no idea. :)

If I was trying to do the same thing in Delphi I would probably just lay a Panel on the form to "fake" the background color while still letting the clicks propagate. I haven't found a Panel object yet for AutoIt.

Edited by MilesAhead
Link to comment
Share on other sites

You could try an other way: create black disabled labels the same size as the extended frame :party: (or better use the color from DwmGetColorizationColor)

Can' t test since i have no vista and Win7 won't run in my VM :)

Edited by ProgAndy

*GERMAN* [note: you are not allowed to remove author / modified info from my UDFs]My UDFs:[_SetImageBinaryToCtrl] [_TaskDialog] [AutoItObject] [Animated GIF (GDI+)] [ClipPut for Image] [FreeImage] [GDI32 UDFs] [GDIPlus Progressbar] [Hotkey-Selector] [Multiline Inputbox] [MySQL without ODBC] [RichEdit UDFs] [SpeechAPI Example] [WinHTTP]UDFs included in AutoIt: FTP_Ex (as FTPEx), _WinAPI_SetLayeredWindowAttributes

Link to comment
Share on other sites

Another idea...

I don't know about the Colorization thing and nothing about PNG use in Au3.

But this should work:

Make a transparent window with that PNG and GDI+ stuff, then create a semi-transparent coloured label which has the colour from DwmGetColorizationColor.

Then apply DwmEnableBlurBehindwindow.

regards,

Roman

[font="Courier New"]http://RomanK.hondadesigns.com[/font]
Link to comment
Share on other sites

You could try an other way: create black disabled labels the same size as the extended frame :idea: (or better use the color from DwmGetColorizationColor)

Can' t test since i have no vista and Win7 won't run in my VM :party:

Thanks. That worked out well. Not much hassle to create 4 labels to make a border and set the background color to black. :)

Link to comment
Share on other sites

Funny I just downloaded this from Deviant lastnight lol

Well now I can thank you properly.

Nice work :)

_________________

I heard a few different methods, but if someone could post some example code on getting that glass effect on a GUI I'd appreciate it :party:

Thanks,

Kenny

Edited by ken82m

 "I believe that when we leave a place, part of it goes with us and part of us remains... Go anywhere, when it is quiet, and just listen.. After a while, you will hear the echoes of all our conversations, every thought and word we've exchanged.... Long after we are gone our voices will linger in these walls for as long as this place remains."

Link to comment
Share on other sites

wow liking love the glass on cmd

but i have 1 question how can i remove the icon from task bar i wont it to run permanently hiden in the background

any ideas 'would be great'

thanx

and good work :)

thanks , it will be added later

[font="Palatino Linotype"][size="3"]AutoIt Script Examples :[/size][/font][font="Palatino Linotype"][size="3"]_CaptureBehindWindowGlass CMD for Windows Vista/Seven[/size][/font][left][/left][font="Palatino Linotype"][size="3"]Non AutoIt Script programs : Border Skin - Aero Glass On XP[/size][/font]
Link to comment
Share on other sites

Funny I just downloaded this from Deviant lastnight lol

Well now I can thank you properly.

Nice work :)

_________________

I heard a few different methods, but if someone could post some example code on getting that glass effect on a GUI I'd appreciate it :party:

Thanks,

Kenny

thanks

you can check this : Real Vista Aero Glass by JamesBrooks

[font="Palatino Linotype"][size="3"]AutoIt Script Examples :[/size][/font][font="Palatino Linotype"][size="3"]_CaptureBehindWindowGlass CMD for Windows Vista/Seven[/size][/font][left][/left][font="Palatino Linotype"][size="3"]Non AutoIt Script programs : Border Skin - Aero Glass On XP[/size][/font]
Link to comment
Share on other sites

Thanks. That worked out well. Not much hassle to create 4 labels to make a border and set the background color to black. :party:

I added a hack to the James Brooks _Vista_ApplyGlassArea() to mask off the border with black labels as ProgAndy suggested. I posted it on that thread since it's JB's function I hacked. smile.gif

http://www.autoitscript.com/forum/index.ph...mp;#entry683457

nice work man :)

but why do you create 4 labels in order to enable aero glass on all non-client area , you can make one label with GUICtrlSetResizing , or you are trying to enable it on borders only ?

Edited by komalo
[font="Palatino Linotype"][size="3"]AutoIt Script Examples :[/size][/font][font="Palatino Linotype"][size="3"]_CaptureBehindWindowGlass CMD for Windows Vista/Seven[/size][/font][left][/left][font="Palatino Linotype"][size="3"]Non AutoIt Script programs : Border Skin - Aero Glass On XP[/size][/font]
Link to comment
Share on other sites

nice work man :)

but why do you create 4 labels in order to enable aero glass on all non-client area , you can make one label with GUICtrlSetResizing , or you are trying to enable it on borders only ?

Yes. Basically It's just a routine to do extended glass border and have it come out right even if the background color isn't black. The routine sets the background color with whatever is passed in and uses the labels to mask the border with black. That way I can pass in any color for the form background and the glass border will still work.

Here's my color pick dlg set to sky blue using the same routine

post-31149-1242540930_thumb.jpg

Link to comment
Share on other sites

Wouldn't it be easier to let the form background be black, then create one disabled label in your color of choice for your blue background?

EDIT - Actually, your method looks cleaner around the buttons because of the curved edges.

Edited by wraithdu
Link to comment
Share on other sites

Wouldn't it be easier to let the form background be black, then create one disabled label in your color of choice for your blue background?

EDIT - Actually, your method looks cleaner around the buttons because of the curved edges.

I didn't think of that. I tried Graphic and Tab. In Delphi I would have just used TPanel. Thing is though, for doing the border, the Vista glass setting routine would have to make assumptions about the inside of the rectangle instead of just worrying about the border Area array. This way works better for general purpose.

In fact I just added a wrinkle, instead of doing complicated stuff to let the user see the color, like your usual ColorPick Control, as soon as a color is selected, the dialog calls _Vista_ApplyGlassArea to preview the color in itself. Works really well. I just uploaded it if anyone is curious.

http://www.favessoft.com/hotkeys.html

Link to comment
Share on other sites

can you make explorer for windows seven transparent and but border, icon and text still solid? I really want to see it..

nope , i tried it but it didn't work

[font="Palatino Linotype"][size="3"]AutoIt Script Examples :[/size][/font][font="Palatino Linotype"][size="3"]_CaptureBehindWindowGlass CMD for Windows Vista/Seven[/size][/font][left][/left][font="Palatino Linotype"][size="3"]Non AutoIt Script programs : Border Skin - Aero Glass On XP[/size][/font]
Link to comment
Share on other sites

Looks like THIS by JamesBrooks

It is, just hooked.

I added a hack to the James Brooks _Vista_ApplyGlassArea() to mask off the border with black labels as ProgAndy suggested. I posted it on that thread since it's JB's function I hacked. :party:

http://www.autoitscript.com/forum/index.ph...mp;#entry683457

Thanks for the credit :)

thanks

you can check this : Real Vista Aero Glass by JamesBrooks

Already mentioned.
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...