Jump to content

İki Kodu Birleştirme Problemi


SAYGINER
 Share

Recommended Posts

Merhaba arkadaşlar.Aşağıdaki kodları birbirine bağlayamadım.Yapmaya çalıştığım program kurulurken Lütfen bekleyin ,kurulum bitince de Kurulum bitti diye sağ alt köşede olması ve 2 saniye sonra kendiliğinden kapanması.Traytip şeklinde değil bu şekilde kayan yazı biçiminde olması.
[code]#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
Opt("GUIOnEventMode", 1)
Global $b = True
$Form1 = GUICreate("Merhaba", 200, 65, 192, 124)
GUISetOnEvent(-3, "Kapa")
$Label1 = GUICtrlCreateLabel("Lütfen Bekleyin.", 10, 16)
GUISetState(@SW_SHOW)

while $b = True
For $i = 9 To 150
ControlMove($Form1,"",$Label1,$i,16)
Sleep(10)
Next
For $i = 150 To 8 step -1
ControlMove($Form1,"",$Label1,$i,16)
Sleep(10)
Next
WEnd

Func Kapa()
Global $b = True
$Form1 = GUICreate("Merhaba", 200, 65, 192, 124)
GUISetOnEvent(-3, "Kapa")
$Label1 = GUICtrlCreateLabel("Kurulum bitti.", 10, 16)
GUISetState(@SW_SHOW)

while $b = True
For $i = 9 To 150
ControlMove($Form1,"",$Label1,$i,16)
Sleep(10)
Next
For $i = 150 To 8 step -1
ControlMove($Form1,"",$Label1,$i,16)
Sleep(10)
Next
WEnd


Exit
EndFunc
[/code]
Link to comment
Share on other sites

@SAYGINER

Uzun bir süre önce mesaj verme için hazıladığım bir fonksiyonu senin örneğine uyarlarsak, heralde işini görür. Kurcalarsın, kolay gelsin...

[codebox]Global $BlueLife_Info[5]
_BlueLife_Info("Lütfen Bekleyin.", 250, 30) ;Mesajımızı ekrana yazalım
Global $RunPid = Run("Notepad.exe") ;Programımızı çalıştıralım

While ProcessExists($RunPid) <> 0 ;Çalıştırdığımız program kapanana kadar bekleyelim
For $i = 5 To 130
GUICtrlSetPos($BlueLife_Info[1], $i)
Sleep(10)
Next
For $i = 130 To 5 Step -1
GUICtrlSetPos($BlueLife_Info[1], $i)
Sleep(10)
Next
WEnd

GUICtrlSetData($BlueLife_Info[1], "Kurulum tamamlandı.")

Local $Timer = TimerInit() ;Timer kuralım
While TimerDiff($Timer) < 3000 ;3 saniyeden fazla bir zaman geçtiyse çıkalım
For $i = 5 To 130
GUICtrlSetPos($BlueLife_Info[1], $i)
Sleep(10)
Next
For $i = 130 To 5 Step -1
GUICtrlSetPos($BlueLife_Info[1], $i)
Sleep(10)
Next
WEnd

_BlueLife_Info(1, 0, 0)
Exit ;çıkış

Func _BlueLife_Info($BL_MSG, $BL_X = 200, $BL_Y = 50)
Local $Tray_Heihgt = WinGetHandle("[CLASS:Shell_TrayWnd]")
If $Tray_Heihgt = "" Then
$Tray_Heihgt = 0
Else
$Tray_Heihgt = WinGetPos($Tray_Heihgt)
$Tray_Heihgt = $Tray_Heihgt[3]
EndIf

If IsHWnd($BlueLife_Info[0]) = 0 Then
$BlueLife_Info[0] = GUICreate("", $BL_X, $BL_Y, @DesktopWidth - ($BL_X + 2), (@DesktopHeight - $Tray_Heihgt) - $BL_Y, 0x80000000, BitOR(0x00000080, 0x00000008, 0x00000020))
$BlueLife_Info[1] = 0
$BlueLife_Info[2] = $BL_X
$BlueLife_Info[3] = $BL_Y
$BlueLife_Info[4] = 175

GUISetBkColor(0x620073)

Local $BK_GUI_GDI = DllCall("gdi32.dll", "long", "CreateRoundRectRgn", "long", 1, "long", 1, "long", $BlueLife_Info[2], "long", $BlueLife_Info[3], "long", 5, "long", 5)
If $BK_GUI_GDI[0] Then
DllCall("user32.dll", "long", "SetWindowRgn", "hwnd", $BlueLife_Info[0], "long", $BK_GUI_GDI[0], "int", 1)
EndIf
$BlueLife_Info[1] = GUICtrlCreateLabel($BL_MSG, 5, 5, $BlueLife_Info[2] - 10, $BlueLife_Info[3] - 10);, 1
GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0xFFFFFF)

GUICtrlSetResizing(-1, 64 + 32)
GUISetState(@SW_SHOWNOACTIVATE)
WinSetTrans($BlueLife_Info[0], "", $BlueLife_Info[4])
Else
If StringIsDigit($BL_MSG) = 1 And $BL_X + $BL_Y = 0 Then
Sleep($BL_MSG)

Do
$BlueLife_Info[4] -= 5
WinSetTrans($BlueLife_Info[0], "", $BlueLife_Info[4])
Sleep(25)
Until $BlueLife_Info[4] < 1
GUIDelete($BlueLife_Info[0])
$BlueLife_Info = ""
Return
EndIf

GUICtrlSetData($BlueLife_Info[1], $BL_MSG)
If $BL_X <> $BlueLife_Info[2] Or $BL_Y <> $BlueLife_Info[3] Then
$BlueLife_Info[2] = $BL_X
$BlueLife_Info[3] = $BL_Y
WinMove($BlueLife_Info[0], "", @DesktopWidth - ($BlueLife_Info[2] + 2), (@DesktopHeight - $Tray_Heihgt) - $BlueLife_Info[3], $BlueLife_Info[2], $BlueLife_Info[3], 1)
Local $BK_GUI_GDI = DllCall("gdi32.dll", "long", "CreateRoundRectRgn", "long", 1, "long", 1, "long", $BlueLife_Info[2], "long", $BlueLife_Info[3], "long", 5, "long", 5)
If $BK_GUI_GDI[0] Then
DllCall("user32.dll", "long", "SetWindowRgn", "hwnd", $BlueLife_Info[0], "long", $BK_GUI_GDI[0], "int", 1)
EndIf
EndIf
EndIf
EndFunc ;==>_BlueLife_Info[/codebox]

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...