Jump to content

Form Lar Arası Geçiş Yapamadım :s


beydere

Recommended Posts

Bence gereksiz bir şey. Ama ben sana wimmove ile ilgili örneği verim sen kurcala!

Tabi bu ara guiyi taşıyınca GUIResizeMode ayarlarınıda yapmak lazım...

#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>

Global $Tab_Read
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Tabbed Notebook Dialog", 413, 305, 303, 219)
GUISetIcon("D:\005.ico")
$PageControl1 = GUICtrlCreateTab(8, 8, 396, 256)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH + $GUI_DOCKHEIGHT)
$TabSheet1 = GUICtrlCreateTabItem("1")
$Checkbox1 = GUICtrlCreateCheckbox("Checkbox1", 32, 72, 97, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Checkbox2 = GUICtrlCreateCheckbox("Checkbox2", 32, 104, 97, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$TabSheet2 = GUICtrlCreateTabItem("2")
$Checkbox3 = GUICtrlCreateCheckbox("Checkbox1", 32, 72, 97, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Checkbox4 = GUICtrlCreateCheckbox("Checkbox2", 32, 104, 97, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$TabSheet3 = GUICtrlCreateTabItem("3")
GUICtrlSetState(-1, $GUI_SHOW)
$Checkbox5 = GUICtrlCreateCheckbox("Checkbox1", 32, 72, 97, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
$Checkbox6 = GUICtrlCreateCheckbox("Checkbox2", 32, 104, 97, 17)
GUICtrlSetFont(-1, 8, 400, 0, "Arial")
GUICtrlCreateTabItem("")
$Button1 = GUICtrlCreateButton("Öner", 168, 272, 75, 25, 0)
$Button2 = GUICtrlCreateButton("Yükle", 248, 272, 75, 25, 0)
$Button3 = GUICtrlCreateButton("Hakkında", 328, 272, 75, 25, 0)
$Button4 = GUICtrlCreateButton("İptal", 87, 272, 75, 25, 0)
$Button5 = GUICtrlCreateButton("Seç", 7, 272, 75, 25, 0)
GUISetState(@SW_SHOW)
$Form2 = GUICreate("Form1", 413, 298, 284, 215)
$Button7 = GUICtrlCreateButton("Button7", 112, 64, 75, 25, 0)

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button3
			_hak()
		Case $Button7
			_geri()
		Case $PageControl1
			Switch GUICtrlRead($PageControl1,1)
				Case $TabSheet1
					GUICtrlSetPos($PageControl1, 8, 8,200,200)
					WinMove($Form1,"",Default,Default,200,250)
				Case $TabSheet2
					GUICtrlSetPos($PageControl1, 8, 8,250,250)
					WinMove($Form1,"",Default,Default,250,300)
				Case $TabSheet3
					GUICtrlSetPos($PageControl1, 8, 8,350,250)
					WinMove($Form1,"",Default,Default,350,350)
		EndSwitch

		Case $Button5 ;Hepsini seç form1
			$Tab_Read = GUICtrlRead($PageControl1,1) ;Hangi tabın seçili olduğunu bulalım
			If $Tab_Read = $TabSheet1 Then ;Birinci tab ise;
				GUICtrlSetState($Checkbox1, 1)
				GUICtrlSetState($Checkbox2, 1)
			ElseIf $Tab_Read = $TabSheet2 Then ;Ikinci tab ise;
				GUICtrlSetState($Checkbox3, 1)
				GUICtrlSetState($Checkbox4, 1)
			ElseIf $Tab_Read = $TabSheet3 Then ;Üçüncü tab ise;
				GUICtrlSetState($Checkbox5, 1)
				GUICtrlSetState($Checkbox6, 1)
			EndIf

		Case $Button4 ;Hepsini kaldır form1
			$Tab_Read = GUICtrlRead($PageControl1,1) ;Hangi tabın seçili olduğunu bulalım
			If $Tab_Read = $TabSheet1 Then ;Birinci tab ise;
				GUICtrlSetState($Checkbox1, 4)
				GUICtrlSetState($Checkbox2, 4)
			ElseIf $Tab_Read = $TabSheet2 Then ;Ikinci tab ise;
				GUICtrlSetState($Checkbox3, 4)
				GUICtrlSetState($Checkbox4, 4)
			ElseIf $Tab_Read = $TabSheet3 Then ;Üçüncü tab ise;
				GUICtrlSetState($Checkbox5, 4)
				GUICtrlSetState($Checkbox6, 4)
			EndIf
		Case $Button1 ;Hepsini kaldır form1
			GUICtrlSetState($Checkbox1, 1)

			GUICtrlSetState($Checkbox3, 1)

			GUICtrlSetState($Checkbox5, 1)

	EndSwitch
WEnd
Func _hak();form2 göster form1 gizle

	GUISetState(@SW_SHOW, $Form2)
	GUISetState(@SW_HIDE, $Form1)

EndFunc   ;==>_hak
Func _geri();form2 göster form1 gizle

	GUISetState(@SW_SHOW, $Form1)
	GUISetState(@SW_HIDE, $Form2)

EndFunc   ;==>_geri

Link to comment
Share on other sites

  • 1 ay sonra...

arkadaşlar benim şöyle bir sıkıntım var
aşağıdaki örneğimde 2 tane form var ok butonuna bastığımızda form 2 ye geçiyor
esc tuşuna bastığımızda tekrar form 1 e dönmesini istiyorum tekrar esc tuşuna basarsak
çıkış yapmasını istiyorum
nasıl birşey yapmamız gerekir
yine aynı şekilde form 2 açıldığında form 1 gizlenecek


[code]
#AutoIt3Wrapper_Au3Check_Parameters=-d -w 1 -w 2 -w 3 -w 4 -w 5 -w 6
#include <GUIConstantsEx.au3>
#include <GuiButton.au3>
#include <WindowsConstants.au3>


Opt("MustDeclareVars", 1)


_Main()

Func _Main()
Local $btn, $btn2,$Msg,$form1,$form2

$form1 = GUICreate("form1", 400, 400)
$btn = GUICtrlCreateButton( "ok", 10, 10, 160, 40)
GUISetState()

While 1
$Msg = GUIGetMsg()
Switch $Msg
Case $GUI_EVENT_CLOSE
ExitLoop
Case $btn
GUISetState(@SW_HIDE, $form1)
$form2 = GUICreate("form2", 400, 400)
GUISetState()
EndSwitch
WEnd
Exit

EndFunc ;==>_Main

[/code]

Link to comment
Share on other sites

Çok farklı şekillerde yapılabilir. Basit bir örnek verelim...
[codebox]_Main()
Func _Main()
Local $form1 = GUICreate("form1", 400, 400)
GUISetBkColor(0x0000FF)
Local $btn = GUICtrlCreateButton( "ok", 10, 10, 160, 40)
GUISetState()

Local $form2 = GUICreate("form2", 400, 400)
GUISetBkColor(0x00FF00)
Local $btn2 = GUICtrlCreateButton( "ok", 10, 10, 160, 40)
While 1

$Msg = GUIGetMsg()
Switch $Msg
Case -3
If WinActive($form1) Then
ExitLoop
Else
GUISetState(@SW_SHOW,$form1)
GUISetState(@SW_HIDE,$form2)
EndIf
Case $btn
GUISetState(@SW_SHOW,$form2)
GUISetState(@SW_HIDE,$form1)
Case $btn2
GUISetState(@SW_SHOW,$form1)
GUISetState(@SW_HIDE,$form2)
EndSwitch
WEnd
Exit
EndFunc ;==>_Main[/codebox]

Link to comment
Share on other sites

sevgili blue_life

[code]
GUISetState(@SW_HIDE,$form2)
[/code]
bu satır sadece gui ekranının gizli tutulmasını sağlıyor öyle değilmi
yani aynı ekrana geri döndüğümüzde bütün deyerler aynı kalacak
o ekranı tamamen kapatıp geri açılması nasıl olur
yani ben form2 ekranını açtığımda sürekli varsayılan deyerlerle gelmesini istiyorum
birde siteye bağlanmakta çok zorluk çekiyorum sürekli sayfa bulunamadı uyarısı alıyorum
sitedenmi acaba

Link to comment
Share on other sites

@mustafakara

Aynen söylediğin gibi guiyi gizleyip, gösteriyoruz.
O zaman sen oluşturduğun ikinci guiyi silip tekrar oluşturmalısın.
Ben şuan www.tnctr.com ile ilgili bağlantı sorunu yaşamıyorum. Hızlı bir şekilde çalışıyor.
Tabi ben genelde dns kullanarak internete çıkış yapıyorum. (OpenDns)

[codeBox]_Form1()

Func _Form1()
Local $form1 = GUICreate("form1", 400, 400)
GUISetBkColor(0x0000FF)
Local $btn = GUICtrlCreateButton( "ok", 10, 10, 160, 40)
GUISetState()
While 1

$Msg = GUIGetMsg()
Switch $Msg
Case -3
ExitLoop
Case $btn
_Form2($form1)
EndSwitch
WEnd
Exit
EndFunc ;==>_Main

Func _Form2($Hwnd = "")
GUISetState(@SW_HIDE,$Hwnd)
Local $form2 = GUICreate("form2", 400, 400)
GUISetBkColor(0x00FF00)
Local $btn2 = GUICtrlCreateButton( "ok", 10, 10, 160, 40)
GUISetState()
While 1
$Msg = GUIGetMsg()
Switch $Msg
Case -3
ExitLoop
Case $btn2
ExitLoop
EndSwitch
WEnd
GUIDelete($form2)
GUISetState(@SW_SHOW,$Hwnd)
EndFunc ;==>_Main[/codeBox]

Link to comment
Share on other sites

Dns değiştirerek bir dene istersen. Hızlı yapmak için aşağıdaki programı indir.
Çalıştırdıktan sonra dns kutusundan OpenDns olanı seç ve Apply Dns tuşuna bas.
Tabi dns değiştikten sonra tarayıcındaki (mesela firefox) tüm sayfaları kapat ve tekrar aç.
Bu arada bu programda autoit ile yazılmıştır...

[color="#0000FF"][u][b]http://www.sordum.com/dns_jumper/2010x07x09/DnsJumper.zip[/b][/u][/color]
[img]http://i26.tinypic.com/iq8y2g.jpg[/img]

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...