
Mengganti Ikon Suatu Folder
Teraplikasi pada: Delphi 3 ke atas, Win 2000, XP, di atasnya.
Tampilan Icon Folder
Sebuah folder yang secara default memiliki ikon berwarna kuning. Tampilan default ini sangat bermanfaat untuk membedakan folder dari objek-objek lainnya. Namun saat Anda telah memiliki banyak folder, misalnya folder-folder koleksi album lagu, kemungkinnan Anda repot mencari Rod Steward di antara Inul Daratista, Iyeth Bustami dan Mandy Moore. Dalam kondisi seperti inilah manfaat ikon unik per folder jadi sangat membantu. Anggap Anda sudah mengganti icon folder Rod Stewart tadi dengan sebuah foto Rod Stewart yang telah dikonversi menjadi ikon. Sekali tatap saja Anda sudah menemukan folder Album Rod Stewart.
Sekarang, bagaimana mengganti ikon folder ini?
Dengan software-software yang ada saat ini, mengganti ikon folder jadi sangat mudah. Icon Packager dapat melakukannya dengan baik. Sayang Icon Packager mengganti ikon secara keseluruhan, tidak spesifik per folder. Folder Option yang ada di Win 2000 ke atas juga bisa, tapi tidak ada opsi batch (banyak folder sekaligus) dan juga tidak ada opsi rekursi, bila Anda ganti ikon satu folder, folder-folder di dalamnya dan di dalamnya lagi akan terganti ikonnya.
Anda mungkin sudah menemukan software di jagad Net yang bisa memenuhi kebutuhan ini. Tapi jujur saja, untuk saya peribadi, TANGAN SAYA GATAL UNTUK MEMBUATNYA SENDIRI, SELAGI KEKASIHKU DELPHI ADA DI SISIKU MENEMANI.Dengan menambahkan nama saya di caption form "Created by JokoRB", alamat blog saya di kiri bawa form - dan apa lagi - dan ya, foto saya yang ganteng :-) di kotak About, bukankah akan lebih hebat dan memuaskan untuk dipake?
Untuk mengubahnya, kita tinggal modifikasi file Desktop.ini di folder yang akan diubah ikonnya, atau membuatnya jika belum ada. Isi file Desktop.ini untuk menangani ikon sebuah folder kira-kira seperti ini:
[.ShellClassInfo]IconFile=D:\reev\Icon\CNFNOT.ICOIconIndex=0Di mana IconFile menunjukkan file ikon yang akan digunakan, dan IconIndex menunjukkan urutan ikon dalam file ikon tersebut. Dengan menggunakan Method WriteString dan WriteInteger dari kelas TIniFile, semuanya jadi mudah, bukan?
Selanjutnya, tinggal kodenya di Delphi:
[sourcecode language='delphi']
procedure TForm1.Button3Click(Sender: TObject);
var
folder, icon, desktop: String;
begin
folder:=Edit1.text;
icon:=edit2.text;
if not DirectoryExists(folder) then
begin
ShowMessage('Folder tidak ditemukan.');
Exit;
end;
icon:=Edit2.text;
if (not FileExists(icon))
or
(not (lowercase(ExtractFileExt(icon))='.ico')) then
begin
ShowMessage('File icon tidak valid.');
Exit;
end;
if folder[length(Folder)]<>'\' then
Desktop:=Folder + '\Desktop.ini'
else
Desktop:=Folder + 'Desktop.ini';
if fileExists(Desktop) then DeleteFile(Desktop);
With TIniFile.Create(Desktop) do
begin
WriteString('.ShellClassInfo','IconFile',icon);
WriteInteger('.ShellClassInfo','IconIndex',0);
Free;
end;
SetFileAttributes(pchar(Desktop), 34);
SetFileAttributes(pchar(Folder), FILE_ATTRIBUTE_SYSTEM);
ShowMessage('Selesai.');
end;[/sourcecode]
Hanya itu? Ya, hanya ituScreen Shot
Folder Delph3i sebelum diganti ikonnya.
Proses penggantian ikon.
Folder Delph3i setelah diganti ikonnya.
Download
Download kode, EXE dan Screen Shot
(setelah download, ubah ekstensi ke .zip dan scan dulu sebelum dijalankan).
google_tag: jokorb, folder icon, delphi
Comments