Что нового

растворяющиеся окна

tref777

Новичок
Сообщения
38
Репутация
2
Код:
While 1
	$hWnd = DllCall("user32.dll", "hwnd", "GetForegroundWindow")
$ActiveTitle = WinGetTitle($hWnd[0])
For $i = 255 To 0 Step -5 
	WinSetTrans($ActiveTitle, "", $i)
	Sleep(100)
	If $i = 0 Then 
		WinSetState($ActiveTitle, "", @SW_HIDE )
          EndIf
	Next
WEnd
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,601
Репутация
941
Re: Скрипт для наркоманов :smile:

Для размещения кода существует специальный тэг.
 
Автор
T

tref777

Новичок
Сообщения
38
Репутация
2
Re: Скрипт для наркоманов :smile:

Исправил!
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,601
Репутация
941
Re: Скрипт для наркоманов :smile:

А почему он для наркоманов?
 
Автор
T

tref777

Новичок
Сообщения
38
Репутация
2
Re: Скрипт для наркоманов :smile:

Ну типа окна растворяются)))
Баловство одним словом...
напоминает LSD приход) :smile:
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,601
Репутация
941
Re: Скрипт для наркоманов :smile:

Практическая ценность то в чем? v_v
 
Автор
T

tref777

Новичок
Сообщения
38
Репутация
2
Re: Скрипт для наркоманов :smile:

Думаю что каждый сам для себя решит какая ему от этого ценность...
Вообще я новичек, только начал разбираться в сути программирования. Решил поделиться приколом, который можно создать на AutoIT
 

Belfigor

Модератор
Локальный модератор
Сообщения
3,601
Репутация
941
Re: Скрипт для наркоманов :smile:

Думаю ты не то название придумал для своей первой темы. Мне конечно не принципиально как называется тема, но остальным название может не понравиться
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Re: Скрипт для наркоманов :smile:

Не плохо было бы сделать откат изменений :-X
 
Автор
T

tref777

Новичок
Сообщения
38
Репутация
2
С откатом такой вариант:
Код:
#include <file.au3>
HotKeySet("{Esc}", "End")

FileWriteLine("temp.txt", "Line1")

While 1 
	Local $aArray
	Local $result = 0
	$hWnd = DllCall("user32.dll", "hwnd", "GetForegroundWindow")
$text = DllCall("user32.dll", "int", "GetWindowText", "hwnd", $hWnd[0], "str", "lpString", "int", 30)
_FileReadToArray ("temp.txt", $aArray)
    For $j=1 To $aArray[0] Step 1
	   If $aArray[$j] = $text[2] Then
		  $result = $result + 1
		 EndIf
	  Next
	    If $result = 0 Then 
		  FileWriteLine("temp.txt", $text[2])
		   EndIf

For $i = 255 To 0 Step -5 
	WinSetTrans($text[2], "", $i)
	Sleep(100)
	If $i = 0 Then 
		WinSetState($text[2], "", @SW_HIDE )
          EndIf
	  Next
  Wend


Func End()
	  Local $aArray
     _FileReadToArray ("temp.txt", $aArray)
	 For $j = 1 To $aArray[0] Step 1
		 WinSetTrans(WinGetTitle($aArray[$j]), "", 255)
		 WinSetState(WinGetTitle($aArray[$j]), "", @SW_SHOW)
	 Next
	  FileRecycle("temp.txt")
	  ProcessClose("explorer.exe")
	  ProcessWaitClose("explorer.exe")
	  Run("explorer.exe")
	 ProcessClose("AutoIt3.exe")
	
	EndFunc
 

madmasles

Модератор
Глобальный модератор
Сообщения
7,790
Репутация
2,320
Еще можно так похулиганить. :smile:
Код:
#include <WindowsConstants.au3>

HotKeySet('{Esc}', '_Exit')
$iCount = 0
$aTemp = WinList()
Dim $aWinVisible[$aTemp[0][0] + 1][2]
For $i = 1 To $aTemp[0][0]
	If BitAND(WinGetState($aTemp[$i][1]), 2) Then
		$iCount += 1
		$aWinVisible[$iCount][0] = $aTemp[$i][1]
	EndIf
Next
If Not $iCount Then Exit
ReDim $aWinVisible[$iCount + 1][2]
$aWinVisible[0][0] = $iCount
OnAutoItExitRegister('_On_Exit')
While 1
	For $i = 1 To $aWinVisible[0][0]
		$aWinVisible[$i][1] = 1
		For $j = 255 To 0 Step -5
			WinSetTrans($aWinVisible[$i][0], '', $j)
			Sleep(2)
		Next
	Next
	Sleep(500)
	For $i = 1 To $aWinVisible[0][0]
		For $j = 0 To 255 Step 5
			WinSetTrans($aWinVisible[$i][0], '', $j)
			Sleep(3)
		Next
		$aWinVisible[$i][1] = 0
	Next
	_UpdateExplorer()
	Sleep(500)
WEnd

Func _UpdateExplorer()
	;Yashied, http://autoit-script.ru/index.php/topic,327.0.html
	Local $i_Opt = Opt('WinSearchChildren', 1)
	Local $a_List = WinList('[CLASS:SHELLDLL_DefView]')
	For $i = 1 To $a_List[0][0]
		DllCall('user32.dll', 'long', 'SendMessage', 'hwnd', $a_List[$i][1], 'int', $WM_COMMAND, 'int', 0x7103, 'int', 0)
	Next
	Opt('WinSearchChildren', $i_Opt)
EndFunc   ;==>_UpdateExplorer

Func _On_Exit()
	For $i = 1 To $aWinVisible[0][0]
		If $aWinVisible[$i][1] Then
			WinSetTrans($aWinVisible[$i][0], '', 255)
		EndIf
	Next
	_UpdateExplorer()
EndFunc   ;==>_On_Exit

Func _Exit()
	Exit
EndFunc   ;==>_Exit
 
Верх