Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Ako neko ima vremena!

[es] :: Pascal / Delphi / Kylix :: Ako neko ima vremena!

[ Pregleda: 3122 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

IvanR.
Ivan Rakic
Mladenovac

Član broj: 44281
Poruke: 639
195.252.87.*



+5 Profil

icon Ako neko ima vremena!14.11.2005. u 10:38 - pre 223 meseci
Da li neko moze da napise program u delphi-u koji ce prvo promeniti ime foldera(dodati nesto na postojece ime, npr. folder se zove "ivan", a da program promeni ime u "ivanbla"), zatim da klikom (na neki button) vrati ime u "ivan"???
Please ako neko ima vremena, posto sam pocetnik pa mi samo to treba!
Unapred hvala!
 
Odgovor na temu

Milos D
Beograd

Član broj: 5621
Poruke: 280
*.adsl.sezampro.yu.



+1 Profil

icon Re: Ako neko ima vremena!14.11.2005. u 13:17 - pre 223 meseci
File/New/Application

stavis dva button-a na formu.

dvokliknes na prvi button

delfi napravi Button1Click proceduru, ti samo upises kod

RenameFile ('C:\dir1', 'C:\dir2');

F12 da bi ponovo video formu

dvokliknes na drugi button

upises kod

RenameFile ('C:\dir2', 'C:\dir1');

F9 (run)


Varijanta 2

dodas jos jedan Edit na formu

u kodu, umesto
'C:\dir1'
koristis:
Edit1.Text
da bi dobio sadrzaj edita kao ime direktorijuma (ili fajla) koji treba preimenovati.
 
Odgovor na temu

IvanR.
Ivan Rakic
Mladenovac

Član broj: 44281
Poruke: 639
*.dialup.neobee.net.



+5 Profil

icon Re: Ako neko ima vremena!16.11.2005. u 23:29 - pre 223 meseci
unit Unit1;

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, FileCtrl;

type
TForm1 = class(TForm)
Label1: TLabel;
Button1: TButton;
Button2: TButton;
DirectoryListBox1: TDirectoryListBox;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
RenameFile (label1.Caption,'C:\dir2');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
RenameFile ( 'C:\dir2',label1.Caption);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
DirectoryListBox1.DirLabel := Label1;
end;

end.


Znaci zamisao(sada samo primer)je da se folder dir1 uspomoc
directoryList-a(znaci prosto receno misem izaberes folder kolji ces
preimenovati u drugi, u ovom slucaju ) promeni u C:\dir2
Da li je ovo moguce, znaci izaberem folder koji hocu da preimenujem i kliknem na button?!

Veliko hvala na pomoci!
 
Odgovor na temu

Milos D
Beograd

Član broj: 5621
Poruke: 280
*.adsl.sezampro.yu.



+1 Profil

icon Re: Ako neko ima vremena!17.11.2005. u 14:34 - pre 223 meseci
directoryList1.Directory ti daje trenutno odabrani direktorijum. Znaci na primer

RenameFile (directoryList1.Directory,'C:\dir2');

bi promenio naziv odabranog direktorijuma u c:\dir2

samo, (mislim) da directory list box ne bi "primetio" tu promenu tj. ne bi automatski prikazao promenu. Zato moras da pozoves

directoryList1.Update

[Ovu poruku je menjao Milos D dana 17.11.2005. u 15:36 GMT+1]
 
Odgovor na temu

IvanR.
Ivan Rakic
Mladenovac

Član broj: 44281
Poruke: 639
195.252.87.*



+5 Profil

icon Re: Ako neko ima vremena!17.11.2005. u 21:37 - pre 223 meseci
Veliko hvala na pomoci, ali jednostavno dir1 nece da se preimenuje u dir2(naravno kada ga izaberem na directorylist-u)?
Da li mozes da proveris da li to radi, naravno ako imas vremena i ako ti nije veliki problem!?
Pozdrav
 
Odgovor na temu

Srki_82
Srdjan Tot
Me @ My Home
Ljubljana

Član broj: 28226
Poruke: 1403
82.208.201.*

ICQ: 246436949


+10 Profil

icon Re: Ako neko ima vremena!17.11.2005. u 22:46 - pre 223 meseci
Koliko znam ne smes da pises full putaju kao drugi parametar. Prvi sme da bude "C:\Nesto\MojFolder", ali drugi ne sme da bude "C:\Nesto\MojNoviFolder" nego samo "MojNoviFolder". Drugi parametar koristi putanju iz prvog parametra i ne mozes da promenis ime fajlu koji se nalazi u C:\ tako da se posle promene imena nalazi u C:\NovFolder. Znaci u drugom parametru dajes samo ime fajla ili foldera bez ikakve putanje.
 
Odgovor na temu

Milos D
Beograd

Član broj: 5621
Poruke: 280
*.adsl.sezampro.yu.



+1 Profil

icon Re: Ako neko ima vremena!17.11.2005. u 22:46 - pre 223 meseci
Hm, u stvari mislim da nisam nikad radio sa ovom kontrolom...

Prvo, pazi jer DirectoryListBox1.Directory ne vraca onaj direktorijum koji je selektovan (obojen) nego onaj koji je OTVOREN (dakle sa ikonicom otvorenog foldera, tj onaj koji je dvokliknut).

Drugo, izgleda da funkcija RenameFile iz nekog razloga nece da radi lepo ako pokusavas da promenis ime direktorijuma koji je na jednom disku/particiji, a program je aktivan na drugom disku/particiji. Zato pre preimenovanja postavi da je program aktivan na istoj particiji.

drive := DirectoryListBox1.Drive+':\';
ChDir (drive);

Trece, funkcija nece uspeti ako pokusavas da prebacis direktorijum sa jedne na drugu particiju (renamefile ('c:\dir1', 'd:\dir1')) - bar tako pise u helpu.

Cetvrto, ako je direktorijum "zakljucan" (npr ima neki pokrenuti exe iz tog direktorijuma ili je Expolorer iz nekog razloga "zakljucao" taj dir), opet funkcija nece uspeti.

 
Odgovor na temu

Milos D
Beograd

Član broj: 5621
Poruke: 280
*.adsl.sezampro.yu.



+1 Profil

icon Re: Ako neko ima vremena!17.11.2005. u 22:47 - pre 223 meseci
Ha, koji tajming...

Moze pun path kao destination, verovatno uz neka ogranicenja (npr verovatno ne moze c:\dir2 u c:\dir2\dir3)

[Ovu poruku je menjao Milos D dana 17.11.2005. u 23:50 GMT+1]
 
Odgovor na temu

IvanR.
Ivan Rakic
Mladenovac

Član broj: 44281
Poruke: 639
195.252.87.*



+5 Profil

icon Re: Ako neko ima vremena!17.11.2005. u 22:56 - pre 223 meseci
Hvala na brzim odgovorima!
Evo da ti malo priblizim moju zamisao, hteo sam da samo na ime foldera dodam nekakav nastavak tj. .{2559a1f2-21d7-11d4-bdaf-00c04f60b9f0}, kako bi se folder zakljucao i da se ne moze otvoriti iz Explorer-a!
To znaci prvi button1 bi samo na postojece ime dodao gore navedeni nastavak, a button2 bi taj nastavak brisao!

Kada sam izabrao folder, ja sam ustvario "otvorio"(dvoklikom), ali opet nije hteo da promeni ime, na istoj particiji i koji nije bio 'zakljucan"!

Sta mislis kako bi ovo bilo najefikasnije da se uradi(posto vidim da poznajes Delphi)?
 
Odgovor na temu

Milos D
Beograd

Član broj: 5621
Poruke: 280
*.adsl.sezampro.yu.



+1 Profil

icon Re: Ako neko ima vremena!18.11.2005. u 09:07 - pre 223 meseci
Evo probaj, kod mene radi.
Prikačeni fajlovi
 
Odgovor na temu

IvanR.
Ivan Rakic
Mladenovac

Član broj: 44281
Poruke: 639
195.252.87.*



+5 Profil

icon Re: Ako neko ima vremena!18.11.2005. u 10:48 - pre 223 meseci
E hvala mnogo!
Ja sam dodao jos i drivebox1 i moze da se menja i drive, znaci radi i na C: i na D:.....
Jos jednom hvala!
 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: Ako neko ima vremena!

[ Pregleda: 3122 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.