Jump to content

Set the transparency of a window ?


hcI
 Share

Recommended Posts

Hello everyone !

Me and my friend, send challenges to each others.

And they asked me to do a little code that set randomly the opacity of the first window in WinList

So i loooked out for WinSetTrans, WinActivate, and WinList

So, i tried. But nothing happens with WinSetTrans :

$a = WinList()
$t = Random(0,255)

If $a[0][0] = 0 Then
    MsgBox(16,"Error","No windows are open.")
Else
    WinActivate($a[1][1])
    $jsp = WinWait($a[1][1],"",10)
    WinSetTrans($jsp,"",$t)
EndIf

It select the window, everything is okay but the window keep opacity to 100%.

My question : Why and/or how to change the opacity..

Link to comment
Share on other sites

Why are you using WinWait? You already have the handle in the array $a, there's also no need to activate it, as all you're doing is setting the transparency. IF you wanted to make sure it was active when you set the transparency, then you could use WinWaitActive instead of WinWait. Because of the way you're writing the code, you already know the window exists, and there's no need for a timeout in this case.

Next, you should look to see what windows are in the WinList array, to make sure that the first window is even visible. When I run that code, there's a lot of windows listed with no title, which tells me they probably aren't being shown at all. WinActivate won't make them visible, it just makes them the active window.

Run this code and see what's listed as the first window in the array, then see if it's visible at all

#include <array.au3>
$a = WinList()
$t = Random(0, 255)
_ArrayDisplay($a)
If $a[0][0] = 0 Then
    MsgBox(16, "Error", "No windows are open.")
Else
    WinActivate($a[1][1])
    ConsoleWrite(WinGetProcess($a[1][1]) & @CRLF) ; Returns the PID of the first window, check TaskManager to see what it belongs to
    $jsp = WinWaitActive($a[1][1], "", 10)
    WinSetTrans($jsp, "", $t)
EndIf

It returned the PID of explorer.exe, which isn't visible.

If I posted any code, assume that code was written using the latest release version unless stated otherwise. Also, if it doesn't work on XP I can't help with that because I don't have access to XP, and I'm not going to.
Give a programmer the correct code and he can do his work for a day. Teach a programmer to debug and he can do his work for a lifetime - by Chirag Gude
How to ask questions the smart way!

I hereby grant any person the right to use any code I post, that I am the original author of, on the autoitscript.com forums, unless I've specifically stated otherwise in the code or the thread post. If you do use my code all I ask, as a courtesy, is to make note of where you got it from.

Back up and restore Windows user files _Array.au3 - Modified array functions that include support for 2D arrays.  -  ColorChooser - An add-on for SciTE that pops up a color dialog so you can select and paste a color code into a script.  -  Customizable Splashscreen GUI w/Progress Bar - Create a custom "splash screen" GUI with a progress bar and custom label.  -  _FileGetProperty - Retrieve the properties of a file  -  SciTE Toolbar - A toolbar demo for use with the SciTE editor  -  GUIRegisterMsg demo - Demo script to show how to use the Windows messages to interact with controls and your GUI.  -   Latin Square password generator

Link to comment
Share on other sites

  • Moderators

hcl,

We do not support "spoof" or joke scripts - please read the Forum rules before posting next.

M23

Public_Domain.png.2d871819fcb9957cf44f4514551a2935.png Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind

Open spoiler to see my UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

  • Recently Browsing   0 members

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