Array To List - Çözüldü

Programlama dilleri konusunda bilgi paylaşım alanıdır.
Cevapla
darendeli
Byte4
Byte4
Mesajlar: 183
Kayıt: 06 Haz 2016, 16:55

Array To List - Çözüldü

Mesaj gönderen darendeli »

bu comboboxlarda secenekler olacak bunları secerek islem yaptırmak istiyorum ; Nasıl kullanılması Gerekli Diye Kodun içinde Belirttigim Yer nasıl Kullanılmalı Uzantıyı Ve yeri Comboboxtan Secmeli Yapabilirmiyiz...
1 de inputa Dosya yolunu girince o dosyada Combodan Seçilen Uzantılar varsa listeliyecek Bu tarz birsey Yapmak istiyorum Buraya Kadar Düzenleyebildim...

Kod: Tümünü seç

#include <File.au3>
#include <Array.au3>
#include <EditConstants.au3>
#include <ColorConstants.au3>
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 333, 396, 192, 124)
$Button1 = GUICtrlCreateButton("Dosyaları Listele", 8, 48, 315, 41)
$Combo1 = GUICtrlCreateCombo("Seçim Yapınız..", 8, 16, 145, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
GUICtrlSetData(-1,"Masaüstü|Programın Yanında|Bilgisayarda","Seçim Yapınız..")
$Combo2 = GUICtrlCreateCombo("Seçim Yapınız..", 176, 16, 145, 25, BitOR($CBS_DROPDOWN,$CBS_AUTOHSCROLL))
GUICtrlSetData(-1,".Mp3|.txt|.bmp","Seçim Yapınız..")
$Edit1 = GUICtrlCreateEdit("", 10, 124, 313, 247, BitOR($ES_AUTOVSCROLL,$ES_AUTOHSCROLL,$ES_WANTRETURN))
$StatusBar1 = _GUICtrlStatusBar_Create($Form1)
_GUICtrlStatusBar_SetText($StatusBar1, "Seçilen Dosya Sayınız..")
$Input1 = GUICtrlCreateInput("Seçilecek Dosya Yolu", 8, 96, 313, 21)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
		Switch GUICtrlRead ($Combo1)
			Case 'Masaüstü'
				If GUICtrlRead($Combo1)= 'Masaüstü' Then
				GUICtrlSetData($Edit1,"")
				$masaustu = GUICtrlRead('Masaüstü')
				$masaustu = @DesktopDir
Local $FileList = _FileListToArray($masaustu, "*.mp3","1")                                     ;Nasıl  kullanılması Gerekli 
 For $i = 1 To $FileList[0]
GUICtrlSetData($Edit1, $FileList[$i]&@CRLF, 1)
_GUICtrlStatusBar_SetText($StatusBar1,"Seçilen Dosya Sayınız..     =           "& $FileList[0]&"       Dosya Bulundu..")
 Next
 Else
			   MsgBox(0,"Bilgi","Aradığınız Dosya Yok")
EndIf
			Case 'Bilgisayarda'
				If GUICtrlRead($Combo1)= 'Bilgisayarda' Then
				GUICtrlSetData($Edit1,"")
				$Bilgisayarda = GUICtrlRead('Bilgisayarda')
				$Bilgisayarda = @DesktopDir
Local $FileList = _FileListToArray($Bilgisayarda, "*.mp3","1")                           ;Nasıl  kullanılması Gerekli 
 For $i = 1 To $FileList[0]
GUICtrlSetData($Edit1, $FileList[$i]&@CRLF, 1)
_GUICtrlStatusBar_SetText($StatusBar1,"Seçilen Dosya Sayınız..     =           "& $FileList[0]&"       Dosya Bulundu..")
 Next
Else
			   MsgBox(0,"Bilgi","Aradığınız Dosya Yok")
EndIf
			Case 'Programın Yanında'
				If GUICtrlRead($Combo1)= 'Programın Yanında' Then
				GUICtrlSetData($Edit1,"")
				$PrograminYaninda = GUICtrlRead('Programın Yanında')
				$PrograminYaninda = @DesktopDir
Local $FileList = _FileListToArray($PrograminYaninda, "*.mp3","1")                   ;Nasıl  kullanılması Gerekli 
 For $i = 1 To $FileList[0]
GUICtrlSetData($Edit1, $FileList[$i]&@CRLF, 1)
_GUICtrlStatusBar_SetText($StatusBar1,"Seçilen Dosya Sayınız..     =           "& $FileList[0]&"       Dosya Bulundu..")
 Next
Else
			   MsgBox(0,"Bilgi","Aradığınız Dosya Yok")
EndIf

EndSwitch
EndSwitch
WEnd
Program Yazmanın En Güzel Yanı Birilerinin Bu Programlardan Faydalandığını Görmektir..
Kullanıcı avatarı
BlueLife
Kilobyte1
Kilobyte1
Mesajlar: 215
Kayıt: 29 Ağu 2014, 20:42

Re: Array To List

Mesaj gönderen BlueLife »

@darendeli

Örneğinde bazı düzeltmeler yaptım incelersin. Kolay gelsin...

Kod: Tümünü seç

#include <File.au3>
#include <Array.au3>
#include <EditConstants.au3>
#include <ColorConstants.au3>
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <GuiStatusBar.au3>
#include <WindowsConstants.au3>
#region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 333, 396, 192, 124)
$Button1 = GUICtrlCreateButton("Dosyaları Listele", 8, 48, 315, 41)
$Combo1 = GUICtrlCreateCombo("Seçim Yapınız..", 8, 16, 145, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL))
GUICtrlSetData(-1, "1 - Masaüstü|2 - Programın Yanında|3 - Bilgisayarda", "Seçim Yapınız..")
$Combo2 = GUICtrlCreateCombo("Seçim Yapınız..", 176, 16, 145, 25, BitOR($CBS_DROPDOWN, $CBS_AUTOHSCROLL))
GUICtrlSetData(-1, ".Mp3|.txt|.bmp", "Seçim Yapınız..")
$Edit1 = GUICtrlCreateEdit("", 10, 124, 313, 247, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN))
$StatusBar1 = _GUICtrlStatusBar_Create($Form1)
_GUICtrlStatusBar_SetText($StatusBar1, "Seçilen Dosya Sayınız..")
$Input1 = GUICtrlCreateInput("Seçilecek Dosya Yolu", 8, 96, 313, 21)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###

Local $Value1, $Value2, $TargetDir,$FileList
While 1
	$nMsg = GUIGetMsg()
	Switch $nMsg
		Case $GUI_EVENT_CLOSE
			Exit
		Case $Button1
			$Value1 = GUICtrlRead($Combo1)
			If Number(StringLeft($Value1,1)) = 0 Then ;Uzantı seçilmediyse
				GUICtrlSetState($Combo1, 256)
				GUICtrlSendMsg($Combo1, 335, True, 0)
				ContinueLoop
			EndIf

			$Value2 = GUICtrlRead($Combo2)
			If StringLeft($Value2,1) <> "." Then ;Uzantı seçilmediyse
				GUICtrlSetState($Combo2, 256)
				GUICtrlSendMsg($Combo2, 335, True, 0)
				ContinueLoop
			EndIf

			Switch Number(StringLeft($Value1,1))
				Case 1 ;Masaüstü
					GUICtrlSetData($Edit1, "")
					$TargetDir = @DesktopDir
					$FileList = _FileListToArray($TargetDir, "*" & $Value2, "1") ;Nasıl  kullanılması Gerekli
					If IsArray($FileList) Then
						For $i = 1 To $FileList[0]
							GUICtrlSetData($Edit1, $FileList[$i] & @CRLF, 1)
							_GUICtrlStatusBar_SetText($StatusBar1, "Seçilen Dosya Sayınız..     =           " & $FileList[0] & "       Dosya Bulundu..")
						Next
					Else
						MsgBox(0, "Bilgi", "Aradığınız Dosya Yok",0,$Form1)
					EndIf

				Case 2 ;Programın Yanında
					GUICtrlSetData($Edit1, "")
					$TargetDir = @ScriptDir
					$FileList = _FileListToArray($TargetDir, "*" & $Value2, "1") ;Nasıl  kullanılması Gerekli
					If IsArray($FileList) Then
						For $i = 1 To $FileList[0]
							GUICtrlSetData($Edit1, $FileList[$i] & @CRLF, 1)
							_GUICtrlStatusBar_SetText($StatusBar1, "Seçilen Dosya Sayınız..     =           " & $FileList[0] & "       Dosya Bulundu..")
						Next
					Else
						MsgBox(0, "Bilgi", "Aradığınız Dosya Yok",0,$Form1)
					EndIf

				Case 3 ;Bilgisayarda
					GUICtrlSetData($Edit1, "")
					; DriveGetDrive fonksiyonu ile sürücü harflerini alıp döngü içinde diğer sürücülerde arama yaptırabilirsin. Tabi işlem uzun sürebilir.
					$TargetDir = "C:"
					$FileList = _FileListToArray($TargetDir, "*" & $Value2, "1") ;Nasıl  kullanılması Gerekli
					If IsArray($FileList) Then
						For $i = 1 To $FileList[0]
							GUICtrlSetData($Edit1, $FileList[$i] & @CRLF, 1)
							_GUICtrlStatusBar_SetText($StatusBar1, "Seçilen Dosya Sayınız..     =           " & $FileList[0] & "       Dosya Bulundu..")
						Next
					Else
						MsgBox(0, "Bilgi", "Aradığınız Dosya Yok",0,$Form1)
					EndIf
			EndSwitch
	EndSwitch
WEnd
Cevapla