Skocz do zawartości
  • Dołącz do społeczności!

    👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Rekomendowane odpowiedzi

Opublikowano (edytowane)

Czy kiedykolwiek miałeś tak, że wchodząc do folderu miałeś masę plików o tym samym dlugim poczatku a Ty szukales jednego i najchetniej usunalbys te cholerne przedrostki?

Albo wrzuciłeś muzykę na telefon a tam znowu to samo! Tytuły przewijają się powoli a Ty szukasz jednej piosenki by pokazać ją zniecierpliwionym kumplom?

 

Miałeś tak? Tu znajdziesz rozwiazanie!

Nie miałeś? Kogo to obchodzi, przewijaj dalej!

 

Przedstawiam Renaming czyli program który usunie dane znaki, słowa itp. z plików w wybranym folderze , albo ponumeruje je wszystkie za jednym kliknięciem.

Oto Source-Code:

 

 


#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>
#include <file.au3>
#Include <Array.au3>
#Region ### START Koda GUI section ###
$Form1 = GUICreate("Renaming by wojtek333314", 346, 170)
$Tab1 = GUICtrlCreateTab(8, 8, 330, 156)
GUICtrlSetResizing(-1, $GUI_DOCKWIDTH+$GUI_DOCKHEIGHT)
$TabSheet1 = GUICtrlCreateTabItem("Przemień")
$Input1 = GUICtrlCreateInput("", 200, 64, 121, 21)
$Label1 = GUICtrlCreateLabel("Tekst do usuniecia z nazw:", 64, 64, 133, 17)
$Button1 = GUICtrlCreateButton("Start", 248, 128, 75, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Wybierz folder", 64, 96, 75, 25, $WS_GROUP)
$Label2 = GUICtrlCreateLabel("", 144, 96, 177, 36)
GUICtrlSetFont(-1, 6, 400, 0, "MS Sans Serif")
$TabSheet2 = GUICtrlCreateTabItem("Opcje")
$Checkbox2 = GUICtrlCreateCheckbox("Pozostaw nazwy plików i ponumeruj", 24, 60, 193, 17)
$Checkbox3 = GUICtrlCreateCheckbox("Usun dane slowa z nazw plików", 24, 84, 177, 17)
$TabSheet3 = GUICtrlCreateTabItem("Pomoc")
$Label3 = GUICtrlCreateLabel("W zakladce 'Opcje' wybierz interesujace Cie funkcje. Tzn. w jaki", 16, 32, 307, 17)
$Label4 = GUICtrlCreateLabel("sposob ma pracowac program. Nastepnie kliknij zakladke 'Pr", 16, 48, 300, 17)
$Label5 = GUICtrlCreateLabel("zemien'. Jezeli zaznaczyles opcje 'Usun dane slowa z nazw plik", 16, 64, 305, 17)
$Label6 = GUICtrlCreateLabel(" ow' wpisz w polu 'Tekst do usuniecia z nazw' co ma zostac us", 8, 80, 305, 17)
$Label7 = GUICtrlCreateLabel("uniete. Nastepnie wybierz folder i nacisnij 'Start'.", 16, 96, 229, 17)
$Label8 = GUICtrlCreateLabel("Pamietaj, ze program pracuje na calym folderze!", 56, 136, 228, 17)
GUICtrlSetColor(-1, 0xFF0000)
$TabSheet4 = GUICtrlCreateTabItem("O programie")
$Label9 = GUICtrlCreateLabel("Program powstal z mysla o plikach muzycznych, jednak jest tez przydatny do innych operacji takich jak numerowanie itp. Kod zrodlowy znajduje sie na stronie mpcforum.pl"&@CRLF&@CRLF&@CRLF&@CRLF&@CRLF&"Wersja: 1.0"&@CRLF&"Data wydania: 27-08-11r."&@CRLF&"Kontakt GG: 7213552", 16, 32, 307, 500)
GUICtrlCreateTabItem("")
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

global $SCIEZKA
global $LISTA
ustawienia_sprawdzanie()

While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
ustawienia()
Exit
case $button1
przetworz()
case $button2
folder()

EndSwitch
WEnd


func folder()
global $SCIEZKA=FileSelectFolder("Wyszukaj folder na ktorym ma pracowac program","")
global $LISTA = _FileListToArray($sciezka)
GUICtrlSetData($label2,$sciezka)
EndFunc

func przetworz()
if GUICtrlRead($checkbox2)=1 then zostawnumeruj()
if GUICtrlRead($checkbox3)=1 then usunslowa()
EndFunc

func usunslowa()
$LISTA = _FileListToArray($sciezka)
If IsArray($lista) Then
ProgressOn("INFO","Zmienianie w toku")
for $Index=1 to $Lista[0]
$NAZWA = StringReplace($LISTA[$INDEX],GUICtrlRead($input1),"")
FileMove($SCIEZKA & "\" & $LISTA[$INDEX],$SCIEZKA & "\" & $NAZWA)
ProgressSet(Int($index*100/$lista[0]),$lista[$index])
Sleep(100)
next
ProgressOff()
MsgBox(0,"INFO","Pomyślnie zmieniono nazwy plików",0.8)
EndIf
EndFunc

func zostawnumeruj()
$LISTA = _FileListToArray($sciezka)
If IsArray($lista) Then
ProgressOn("INFO","Zmienianie w toku")
for $Index=1 to $Lista[0]
$NAZWA2 = $index &". "& $LISTA[$INDEX]
FileMove($SCIEZKA & "\" & $LISTA[$INDEX],$SCIEZKA & "\" & $NAZWA2)
ProgressSet(Int($index*100/$lista[0]),$lista[$index])
Sleep(100)
next
ProgressOff()
MsgBox(0,"INFO","Pomyślnie zmieniono nazwy plików",0.8)
EndIf

EndFunc

func ustawienia()
IniWrite("config.ini","Opcje","check2",guictrlread($checkbox2))
IniWrite("config.ini","Opcje","check3",guictrlread($checkbox3))
EndFunc

func ustawienia_sprawdzanie()
if FileExists("config.ini")=false then FileWrite("config.ini","")
if IniRead ( "config.ini", "Opcje", "check2", "4" )=1 then
GUICtrlSetState($checkbox2,$gui_checked)
EndIf
If IniRead ( "config.ini", "Opcje", "check3", "4" )=1 Then
GUICtrlSetState($checkbox3,$gui_checked)
EndIf
EndFunc

 

 

Kilka screenów:

 

 

20198855.jpg

20911321.jpg

45293915.jpg

 

 

 

 

Program zapamiętuje ostatnie ustawienia,wiec nie usuwac pliku config.cfg ktory sie utworzy.

Zostal on napisany w całości przeze mnie - jednak z pomocą autoitscripts.com , bez tego bym nie dał rady - i bedzie nadal rozwijany, jesli cos mi wpadnie do glowy jak go urozmaicić.

 

 

Proszę o szczerą ocenę w komentarzach, mam nadzieję ,że się przyda :)

Edytowane przez wojtek333314
Opublikowano

Dodaj progress, który pokazywał by postęp pracy(bo gdy daję,aby numerował to niewiadomo kiedy skończył).Oraz jakąś informacje, że czynność została wykonana.

 

To jest ukryta treść, proszę

 

O ile dobrze pamiętam to nie trzeba usuwać pliku,FileWriteLine nadpisze poprzednie dane,więc FileDelete niepotrzebne.

1329036830-U154499.png
Opublikowano (edytowane)

Dodano informacje o pomyslnym zakonczeniu oraz progressbar do numerowania(przy usuwaniu danego slowa juz byl).

@UP Dzieki za pomysly :)

@DOWN Zastapione ;) Rowniez dziekuje :)

Edytowane przez wojtek333314
Opublikowano

Nie myślałeś nad przepisaniem tego do jakiegoś normalnego języka? Ciekawy programy btw :).

Śmiech z dzieci aka `programistów` którzy wstawiają do sygnaturki `kod źródłowy`.

PHP || MySql || C++ || C# || JS || jQuery

Alternative Metal \m/

Opublikowano (edytowane)

I TO jest przydatny program, a nie jakiś "Przyjaciel", albo "Aktualna godzina".

+

Edytowane przez Protecto
Opublikowano

Przydatne :P

Plus ;)

 

Aa i taka rada - kilka labeli lepiej (moim zdaniem) zastąpić jednym "łamiąc" tekst GuiCtrlCreateLabel("tekst1"&@CRLF&"tekst2"&@CRLF&"tekst3" itp ;)

  • 8 miesięcy temu...
Opublikowano

Czy opcje 1 i 2 nie kolidują ze sobą? Raczej powinieneś tu zastosować radio buttony ;] + za programik

Chcesz zarobić na własnym cheacie/bocie? Pisz na PM

Cracking, analiza programu/strony, boty (także web), cheaty

kwoh2cmd.png

×
×
  • Dodaj nową pozycję...