Monday 6 April 2015

DELPHI7 :: Program Kalkulator di Delphi



Deskripsi :

Program kalkulator ini merupakan kalkulator bertipe standar bukan scientic karena fungsi-fungsi penghitungan yang ada masih sederhana seperti tambah, kurang, bagi, kali, akar, mod (sisa pembagian), dan sebagainya. Model dan style dari kalkulator yang saya buat menyerupai kalkulator yang ada pada windows xp. Saya membuat program ini dengan bahasa pemrograman delphi 7 dengan komponen standar yang ada di delphi 7 tersebut.

Source code Program :

  1.   
  2. type  
  3. TFKalkulator = class(TForm)  
  4.   b0: TBitBtn;  
  5.   b1: TBitBtn;  
  6.   b4: TBitBtn;  
  7.   b7: TBitBtn;  
  8.   bMinus: TBitBtn;  
  9.   b2: TBitBtn;  
  10.   b5: TBitBtn;  
  11.   b8: TBitBtn;  
  12.   bTitik: TBitBtn;  
  13.   b3: TBitBtn;  
  14.   b6: TBitBtn;  
  15.   b9: TBitBtn;  
  16.   bTambah: TBitBtn;  
  17.   bKurang: TBitBtn;  
  18.   bKali: TBitBtn;  
  19.   bBagi: TBitBtn;  
  20.   bHasil: TBitBtn;  
  21.   BitBtn18: TBitBtn;  
  22.   bMod: TBitBtn;  
  23.   bAkar: TBitBtn;  
  24.   EdTampil: TEdit;  
  25.   bClear: TBitBtn;  
  26.   BitBtn22: TBitBtn;  
  27.   bBackspace: TBitBtn;  
  28.   MainMenu1: TMainMenu;  
  29.   XPManifest1: TXPManifest;  
  30.   Pengaturan1: TMenuItem;  
  31.   Clear1: TMenuItem;  
  32.   Copy1: TMenuItem;  
  33.   Paste1: TMenuItem;  
  34.   N1: TMenuItem;  
  35.   Keluar1: TMenuItem;  
  36.   Bantuan1: TMenuItem;  
  37.   BukuManual1: TMenuItem;  
  38.   VideoTutorial1: TMenuItem;  
  39.   N2: TMenuItem;  
  40.   HakCipta1: TMenuItem;  
  41.   Timer1: TTimer;  
  42.   Panel1: TPanel;  
  43.   Label1: TLabel;  
  44.   Label2: TLabel;  
  45.   Label3: TLabel;  
  46.   Timer2: TTimer;  
  47.   procedure FormShow(Sender: TObject);  
  48.   procedure b1Click(Sender: TObject);  
  49.   procedure b2Click(Sender: TObject);  
  50.   procedure b3Click(Sender: TObject);  
  51.   procedure b4Click(Sender: TObject);  
  52.   procedure b5Click(Sender: TObject);  
  53.   procedure b6Click(Sender: TObject);  
  54.   procedure b7Click(Sender: TObject);  
  55.   procedure b8Click(Sender: TObject);  
  56.   procedure b9Click(Sender: TObject);  
  57.   procedure b0Click(Sender: TObject);  
  58.   procedure bClearClick(Sender: TObject);  
  59.   procedure bTambahClick(Sender: TObject);  
  60.   procedure bTitikClick(Sender: TObject);  
  61.   procedure bKurangClick(Sender: TObject);  
  62.   procedure bKaliClick(Sender: TObject);  
  63.   procedure bBagiClick(Sender: TObject);  
  64.   procedure bHasilClick(Sender: TObject);  
  65.   procedure bBackspaceClick(Sender: TObject);  
  66.   procedure bAkarClick(Sender: TObject);  
  67.   procedure bModClick(Sender: TObject);  
  68.   procedure bMinusClick(Sender: TObject);  
  69.   procedure Clear1Click(Sender: TObject);  
  70.   procedure Copy1Click(Sender: TObject);  
  71.   procedure Paste1Click(Sender: TObject);  
  72.   procedure Timer1Timer(Sender: TObject);  
  73.   procedure Keluar1Click(Sender: TObject);  
  74.   procedure Timer2Timer(Sender: TObject);  
  75.   procedure BitBtn18Click(Sender: TObject);  
  76.   procedure HakCipta1Click(Sender: TObject);  
  77. private  
  78.   { Private declarations }  
  79.   procedure hitung();  
  80. public  
  81.   { Public declarations }  
  82. end;  
  83.   
  84. var  
  85. FKalkulator: TFKalkulator;  
  86. hasil,temp, simbol, data : string;  
  87. klik : Integer;  
  88.   
  89. implementation  
  90.   
  91. uses StrUtils;  
  92.   
  93. {$R *.dfm}  
  94.   
  95. procedure TFKalkulator.hitung();  
  96. var nilai_real : real;   // hasil yg bersifat real  
  97.   nilai_int : Integer; // hasil yg bersifat integer  
  98. begin  
  99. // kondisi jika operand baru pertama kali diperintahkan  
  100. if klik=1 then  
  101.   hasil :=EdTampil.Text  
  102. else  
  103.   data := EdTampil.Text;  
  104.   
  105. // inisialisasi  
  106. nilai_real := 0;  
  107.   
  108. // kondisi perhitungan jika ditemukan simbol  
  109. if simbol = '+' then  
  110.  begin  
  111.  nilai_real := (StrToFloat(hasil)+StrToFloat(data));  
  112.  hasil := FloatToStr(nilai_real);  
  113.  end  
  114. else if simbol = '-' then  
  115.  begin  
  116.  nilai_real := (StrToFloat(hasil)-StrToFloat(data));  
  117.  hasil := FloatToStr(nilai_real);  
  118.  end  
  119. else if simbol = '/' then  
  120.  begin  
  121.  nilai_real := (StrToFloat(hasil)/strToFloat(data));  
  122.  hasil := FloatToStr(nilai_real);  
  123.  end  
  124. else if simbol = 'X' then  
  125.  begin  
  126.  nilai_real := (StrToFloat(hasil)*StrToFloat(data));  
  127.  hasil := FloatToStr(nilai_real);  
  128.  end  
  129. else if simbol = '%' then  
  130.  begin  
  131.  nilai_int := (StrToInt(hasil) mod StrToInt(data));  
  132.  hasil := IntToStr(nilai_int);  
  133.  end  
  134. else if simbol = 'sqrt' then  
  135.  begin  
  136.  nilai_real :=  sqrt(StrToFloat(hasil));  
  137.  hasil := FloatToStr(nilai_real);  
  138.  end  
  139. else if simbol = '1/x' then  
  140.  begin  
  141.  nilai_real :=  1/(StrToFloat(hasil));  
  142.  hasil := FloatToStr(nilai_real);  
  143.  end  
  144. else if simbol = '=' then  
  145.  hasil := FloatToStr(nilai_real);  
  146. end;  
  147.   
  148. procedure TFKalkulator.FormShow(Sender: TObject);  
  149. begin  
  150. //EdTampil.al :=  
  151. EdTampil.Text :=  '0';  
  152.   
  153. // inisialisasi variabel global  
  154. temp := '';   // menyimpan sementara bilangan di EdTampil  
  155. data := '';   // memindahkan hasil dari temp agar bersifat permanen  
  156. hasil := '';  // hasil perhitungan  
  157. simbol := ''// operand type  
  158.   
  159. klik := 0//bnyaknya klik suatu operand  
  160.   
  161. Panel1.Visible := False;  
  162. Timer1.Enabled := False;  
  163. Timer2.Enabled := False;  
  164. end;  
  165.   
  166. procedure TFKalkulator.b1Click(Sender: TObject);  
  167. begin  
  168. if (EdTampil.Text = '0'then  
  169.  EdTampil.Clear  
  170. else if (klik>1then  
  171.  begin  
  172.  EdTampil.Clear;  
  173.  klik:=1;  
  174.  end;  
  175.   
  176. temp := EdTampil.Text;  
  177. EdTampil.Text := temp+'1';  
  178. end;  
  179.   
  180. procedure TFKalkulator.b2Click(Sender: TObject);  
  181. begin  
  182. if (EdTampil.Text = '0'then  
  183.  EdTampil.Clear  
  184. else if (klik>1then  
  185.  begin  
  186.  EdTampil.Clear;  
  187.  klik:=1;  
  188.  end;  
  189.   
  190. temp := EdTampil.Text;  
  191. EdTampil.Text := temp+'2';  
  192. end;  
  193.   
  194. procedure TFKalkulator.b3Click(Sender: TObject);  
  195. begin  
  196. if (EdTampil.Text = '0'then  
  197.  EdTampil.Clear  
  198. else if (klik>1then  
  199.  begin  
  200.  EdTampil.Clear;  
  201.  klik:=1;  
  202.  end;  
  203.   
  204. temp := EdTampil.Text;  
  205. EdTampil.Text := temp+'3';  
  206. end;  
  207.   
  208. procedure TFKalkulator.b4Click(Sender: TObject);  
  209. begin  
  210. if (EdTampil.Text = '0'then  
  211.  EdTampil.Clear  
  212. else if (klik>1then  
  213.  begin  
  214.  EdTampil.Clear;  
  215.  klik:=1;  
  216.  end;  
  217.   
  218. temp := EdTampil.Text;  
  219. EdTampil.Text := temp+'4';  
  220. end;  
  221.   
  222. procedure TFKalkulator.b5Click(Sender: TObject);  
  223. begin  
  224. if (EdTampil.Text = '0'then  
  225.  EdTampil.Clear  
  226. else if (klik>1then  
  227.  begin  
  228.  EdTampil.Clear;  
  229.  klik:=1;  
  230.  end;  
  231.   
  232. temp := EdTampil.Text;  
  233. EdTampil.Text := temp+'5';  
  234. end;  
  235.   
  236. procedure TFKalkulator.b6Click(Sender: TObject);  
  237. begin  
  238. if (EdTampil.Text = '0'then  
  239.  EdTampil.Clear  
  240. else if (klik>1then  
  241.  begin  
  242.  EdTampil.Clear;  
  243.  klik:=1;  
  244.  end;  
  245.   
  246. temp := EdTampil.Text;  
  247. EdTampil.Text := temp+'6';  
  248. end;  
  249.   
  250. procedure TFKalkulator.b7Click(Sender: TObject);  
  251. begin  
  252. if (EdTampil.Text = '0'then  
  253.  EdTampil.Clear  
  254. else if (klik>1then  
  255.  begin  
  256.  EdTampil.Clear;  
  257.  klik:=1;  
  258.  end;  
  259.   
  260. temp := EdTampil.Text;  
  261. EdTampil.Text := temp+'7';  
  262. end;  
  263.   
  264. procedure TFKalkulator.b8Click(Sender: TObject);  
  265. begin  
  266. if (EdTampil.Text = '0'then  
  267.  EdTampil.Clear  
  268. else if (klik>1then  
  269.  begin  
  270.  EdTampil.Clear;  
  271.  klik:=1;  
  272.  end;  
  273.   
  274. temp := EdTampil.Text;  
  275. EdTampil.Text := temp+'8';  
  276. end;  
  277.   
  278. procedure TFKalkulator.b9Click(Sender: TObject);  
  279. begin  
  280. if (EdTampil.Text = '0'then  
  281.  EdTampil.Clear  
  282. else if (klik>1then  
  283.  begin  
  284.  EdTampil.Clear;  
  285.  klik:=1;  
  286.  end;  
  287.   
  288. temp := EdTampil.Text;  
  289. EdTampil.Text := temp+'9';  
  290. end;  
  291.   
  292. procedure TFKalkulator.b0Click(Sender: TObject);  
  293. begin  
  294. if (EdTampil.Text = '0'then  
  295.  EdTampil.Clear  
  296. else if (klik>1then  
  297.  begin  
  298.  EdTampil.Clear;  
  299.  klik:=1;  
  300.  end;  
  301.   
  302. temp := EdTampil.Text;  
  303. EdTampil.Text := temp+'0';  
  304. end;  
  305.   
  306. procedure TFKalkulator.bTitikClick(Sender: TObject);  
  307. begin  
  308. if (klik>1then  
  309.  begin  
  310.  EdTampil.Clear;  
  311.  klik:=1;  
  312.  end;  
  313.   
  314. temp := EdTampil.Text;  
  315. EdTampil.Text := temp+'.';  
  316. end;  
  317.   
  318. procedure TFKalkulator.bMinusClick(Sender: TObject);  
  319. begin  
  320. if ((EdTampil.Text = '0') OR (klik>1)) then  
  321.   EdTampil.Clear;  
  322.   
  323. temp := EdTampil.Text;  
  324. EdTampil.Text := temp+'-';  
  325. end;  
  326.   
  327. procedure TFKalkulator.bClearClick(Sender: TObject);  
  328. begin  
  329. FormShow(Sender); // tampilkan dlm keadaan awal  
  330. end;  
  331.   
  332. procedure TFKalkulator.bTambahClick(Sender: TObject);  
  333. begin  
  334. klik:=klik+1;  
  335. //ShowMessage(''+IntToStr(klik));  
  336. hitung();  
  337. if klik=1 then  
  338.   EdTampil.Text := ''  
  339. else  
  340.  EdTampil.Text := hasil;  
  341.   
  342. simbol := '+';  
  343. temp := '';  
  344. end;  
  345.   
  346. procedure TFKalkulator.bKurangClick(Sender: TObject);  
  347. begin  
  348. klik:=klik+1;  
  349. hitung();  
  350. if klik=1 then  
  351.   EdTampil.Text := ''  
  352. else  
  353.  EdTampil.Text := hasil;  
  354. simbol := '-';  
  355. temp := '';  
  356. end;  
  357.   
  358. procedure TFKalkulator.bKaliClick(Sender: TObject);  
  359. begin  
  360. klik:=klik+1;  
  361. hitung();  
  362. if klik=1 then  
  363.   EdTampil.Text := ''  
  364. else  
  365.  EdTampil.Text := hasil;  
  366. simbol := 'X';  
  367. temp := '';  
  368. end;  
  369.   
  370. procedure TFKalkulator.bBagiClick(Sender: TObject);  
  371. begin  
  372. klik:=klik+1;  
  373. hitung();  
  374. if klik=1 then  
  375.   EdTampil.Text := ''  
  376. else  
  377.  EdTampil.Text := hasil;  
  378.   
  379. simbol := '/';  
  380. temp := '';  
  381. end;  
  382.   
  383. procedure TFKalkulator.bModClick(Sender: TObject);  
  384. begin  
  385. klik:=klik+1;  
  386. hitung();  
  387. if klik=1 then  
  388.   EdTampil.Text := ''  
  389. else  
  390.  EdTampil.Text := hasil;  
  391.   
  392. simbol := '%';  
  393. temp := '';  
  394. end;  
  395.   
  396. procedure TFKalkulator.bAkarClick(Sender: TObject);  
  397. begin  
  398. klik:=klik+1;  
  399. if klik=1 then  
  400.  begin  
  401.     simbol := 'sqrt';  
  402.     hitung();  
  403.     EdTampil.Text := hasil;  
  404.  end  
  405. else  
  406.  begin  
  407.     hitung();  
  408.     EdTampil.Text := hasil;  
  409.  end;  
  410.   
  411. temp := '';  
  412. klik:=0;  
  413. simbol:= '';  
  414. end;  
  415.   
  416. procedure TFKalkulator.BitBtn18Click(Sender: TObject);  
  417. begin  
  418. klik:=klik+1;  
  419. if klik=1 then  
  420.  begin  
  421.     simbol := '1/x';  
  422.     hitung();  
  423.     EdTampil.Text := hasil;  
  424.  end  
  425. else  
  426.  begin  
  427.     hitung();  
  428.     EdTampil.Text := hasil;  
  429.  end;  
  430. temp := '';  
  431. klik:=0;  
  432. simbol:= '';  
  433. end;  
  434.   
  435. procedure TFKalkulator.bHasilClick(Sender: TObject);  
  436. begin  
  437. klik:=klik+1;  
  438. hitung();  
  439. EdTampil.Text := hasil;  
  440. temp := '';  
  441. klik:=0;  
  442. simbol:= '';  
  443. end;  
  444.   
  445. procedure TFKalkulator.bBackspaceClick(Sender: TObject);  
  446. var pjg : Integer;  
  447. begin  
  448. pjg := (EdTampil.GetTextLen); // panjang karakter dalam EdTampil  
  449. EdTampil.Text := LeftStr(EdTampil.Text, pjg-1); // Tampilkan karakter sebanyak pjg-1 dari kiri  
  450. if pjg = 1 then  
  451.  EdTampil.Text := '0';  
  452. end;  
  453.   
  454. procedure TFKalkulator.Clear1Click(Sender: TObject);  
  455. begin  
  456. bClear.Click;  
  457. end;  
  458.   
  459. procedure TFKalkulator.Copy1Click(Sender: TObject);  
  460. begin  
  461. EdTampil.SelectAll;  
  462. EdTampil.CopyToClipboard;  
  463. end;  
  464.   
  465. procedure TFKalkulator.Paste1Click(Sender: TObject);  
  466. begin  
  467. EdTampil.Clear;  
  468. EdTampil.ReadOnly := False;  
  469. EdTampil.PasteFromClipboard;  
  470. EdTampil.ReadOnly := True;  
  471. end;  
  472.   
  473. procedure TFKalkulator.Timer1Timer(Sender: TObject);  
  474. begin  
  475. AlphaBlend := True;  
  476. Panel1.Visible := True;  
  477. if Panel1.Height = 208 then  
  478.  begin  
  479.     Timer2.Enabled := True;  
  480.  end  
  481. else  
  482.  begin  
  483.     Panel1.Height := Panel1.Height +1;  
  484.   
  485.     if (Panel1.Height mod 4=0then  
  486.        begin  
  487.            Label1.Top := Label1.Top+1;  
  488.            Label2.Top := Label2.Top+1;  
  489.            Label3.Top := Label3.Top+1;  
  490.        end;  
  491.  end;  
  492. end;  
  493.   
  494. procedure TFKalkulator.Keluar1Click(Sender: TObject);  
  495. begin  
  496. Timer1.Enabled := True;  
  497. end;  
  498.   
  499. procedure TFKalkulator.Timer2Timer(Sender: TObject);  
  500. begin  
  501.  if AlphaBlendValue=180 then  
  502.     close  
  503.  else  
  504.     begin  
  505.     AlphaBlendValue := AlphaBlendValue-1;  
  506.     Caption := 'Kalkulator '+IntToStr(AlphaBlendValue-180);  
  507.     end;  
  508. end;  
  509.   
  510. procedure TFKalkulator.HakCipta1Click(Sender: TObject);  
  511. begin  
  512. ShowMessage('Peogram kalkulator Standart Versi 1.0 '+#13#10+  
  513.           'Dibuat oleh Mahasiswa Ilmu Komputer UB '+#13#10+  
  514.           'ADHITYA AHMAD P (0510960002) '+#13#10+  
  515.           'Angkatan 2005');  
  516. end;  
  517.   
  518. end.  

Output Program :



DELPHI7 :: Komponen untuk Delphi



Bahasa Pemrograman delphi merupakan bentuk visual dari bahasa pemrograman pascal yang terinspirasi dari munculnya bentuk visual dari BASIC yaitu visual basic. Bahasa pemrograman delphi ini lahir pada tahun 1995 dan sempat menjadi bahasa pemrograman favorit para programmer pada akhir dekade 90-an. Popularitasnya semakin menurun sejak Anders Hejlsberg,yang mana merupakan pentolan dari programmer delphi "diculik" oleh Microsoft untuk mengembangkan bahasa pemrograman C#(dibaca:si sharp).
Bahasa pemrograman ini tidak berbasis OOP melainkan berbasis struktur hanya fungsi dan procedure saja. Pada umumnya, software ini hanya menyediakan komponen-komponen standar untuk pengembangan dan pembuatan suatu aplikasi. Untuk memperindah dan memudahkan Anda dalam pembuatan aplikasi, delphi menyediakan berbagai komponen yang menarik dan sesuai dengan kebutuhan programmer. Adapun beberapa komponen tambahan yang mendukung untuk delphi yaitu :
  1. DevExpress
    Komponen tambahan ini sangat banyak sekali fitur yang disuguhkan. Style yang menyerupai office 2007 seperti ribbon, sidebar, page control, toolbar, image, data control dan lain-lain. Terlihat begitu smooth dan sangat elegant sekali. Jika Anda berminat ingin mencoba komponen tersebut silakan download disini. Dilengkapi dengan demo-nya juga lho! untuk mengetahui cara penggunaan komponen-komponen tersebut.
    Adapun petunjuk instalasi sebagai berikut :
    • Pastikan borland delphi telah ter-install dengan sempurna sebelumnya. Disini, saya tidak akan menjelaskan bagaimana cara meng-install delphi.
    • Extract file DevExpress yang telah anda download tadi. Hasilnya berupa folder dengan nama 'DevExpress'. Kalo Anda g punya aplikasinya bisa download WinRar disini.
    • Copy folder DevExpress ini ke ....\Program Files\Borland\Delphi7\ (tempat anda meng-install delphi).
    • Install komponen DevExpress dengan membuka tiap folder yang ada di dalam folder DevExpress kemudian cari folder package. Disana terdapat file ber-type delphi package, pilih file tersebut sesuai dengan versi delphi anda. Misal, Delphi 7 maka akan ada file bernama ....7.dcu kemudian klik file tersebut. Perhatikan langkah di bawah ini dengan seksama!
    • a. Pertama akan muncul tampilan seperti di bawah ini.
      b. Kemudian dari tampilan di atas tadi pilih option. Maka akan muncul tampilan seperti di bawah ini. Pilihlah designtime and runtime kemudian klik tombol 'OK'.
      c. Kemudian tampilan akan kembali ke langkah a dan tekanlah tombol 'compile'. Jika muncul tampilan seperti di bawah ini .
      cari unit atau source (.pas) dari nama yang diberi warna merah seperti gambar diatas. Source tersebut ada terdapat di dalam folder cari folder dengan nama 'source'. Tanda tersebut memberitahukan bahwa file tersebut belum ditambahkan. Adapun cara penambahannya seperti di bawah ini yang terdapat pada tombol 'add' pada tampilan seperti langkah a.
      Copy url nama unit atau file yang belum ditambahkan tadi ke tampilan di atas. Atau browse nama unit atau file tersebut. Kemudian tekan tombol 'OK'. Jika berhasil akan muncul perintah seperti di bawah ini
      Begitu seterusnya untuk tiap-tiap komponen yang ada.

    • Untuk memperlancar proses instalasi sebaiknya Anda mengikuti urutan langkah-langkah instalasi komponen di bawah. Adapun urutan langkah-langkah instalasi komponennya adalah sebagai berikut :
      > XP Theme Manager
      > ExpressGDI+ Library
      > ExpressLibrary
      > ExpressCommon Library
      > ExpressBars 6
      > ExpressNavBar
      > ExpressDocking Library
      > ExpressPageControl 2
      > ExpressExport Library
      > ExpressDataController
      > ExpressEditors Library 5
  2. Nice Grid
    Anda ingin memiliki tabel yang menyerupai microsoft excell? Inilah komponennya 'NiceGrid'. Sayang, tersedia untuk delphi 7 saja. Dengan komponen ini Anda akan merasakan bahwa tabel yang akan Anda pakai menjadi lebih modern karena tampilan ini g jadul banget kaya komponen brid lainnya yang ada. disini

DELPHI7 :: Membuat menu ribbon layaknya Office 2007




  1. Pada component pallete delphi pilih ExpressBar.
  2. Kemudian pilih dxRibbon, letakkan komponennya pada form
  3. Kemudian pilih dxBarmanager secara default akan bernama dxBarManager1
  4. Pada Object Inspector dxRibbon pilih properties BarManager lalu link-kan dengan dxBarManager1
  5. Untuk memulai kerja pada bidang, klik kanan pada mouse lalu pilih Group With Toolbar untuk menambah komponen pada masing-masing menu
  6. Pada toolbar, klik kanan untuk menambahkan komponen
    Hasilnya
  7. Jika ingin membuat menu dipojok kiri atas, pada komponen dxRibbon cari properties QuickAccessToolbar kemudian pilih toolbar (cari toolbar yg memang disediakan untuk menu pada pojok kiri atas).Untuk meng-edit menu tersebut cari properties application button pada dxribbon 


Jadi pada intinya dalam pembuatan ribbon dibutuhkan komponen dxBarManager. Prinsip ribbon sama dengan toolbar (komponen sebelumnya). Jika ingin menggali lebih dalam "mainkan" saja properties yg ada dan lihatlah perubahannya.

Tambahan Lainnya......



Mennyisipkan gambar pada komponen-komponen di ribbon.

  1. Pada component pallete pilih Dev Express lalu cari komponen cxImageList. Kemudian klik dan pindahkan ke form
  2. Lalu link-kan komponen tersebut pada komponen ribbon. Caranya pada komponen ribbon cari properties BarManager lalu expand kemudian cari ImageOption, nanti ada properties Images dan LargeImage. Salah satu saja dipilih
  3. Pada cxImageList itu sendiri Anda hanya menambahkan icon picture yg akan diurutkan pada index-nya. Double-klik komponen tersebut maka akan tampil seperti gambar di bawah ini :

  4. Pada komponen ribbon, klik component yg ingin disipkan gambar lalu cari properties ImageIndex atau largeImageIndex dan pilih icon yg ingin ditampilkan


Membuat Hint untuk komponen-komponen di ribbon

  1. Pada component pallete pilih ExpressBar lalu cari komponen dxbarScreenTipRepository
  2. Double-klik komponen tersebut lalu add new. Isi properties Header, Footer, Description
  3. Pada komponen yg ada di ribbon, klik komponen tersebut dan link-kan dgn dxBarScreenTipRepository. Caranya cari properties ScreenTip dan pilih


DELPHI7 :: Enkripsi MD5 pada Delphi


download dulu file berikut ini. Chash
setelah didwnload file di atas, jangan lupa diextract ya, kemudian file cHash.pass simpan pada C:\Program Files\Borlan\Delphi7\Imports.  Setelah sukses buka Program Delphinya ya, kemudian buat form inputan seperti berikut .
enkripsi
Pindah pada bagian script,
pada bagian uses tuliskan chash, seperti di bawah ini:
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, chash;
kemudian pada tombol enkripsi tuliskan script berikut ini.
procedure TForm1.Button1Click(Sender: TObject);
begin
edit2.Text:=MD5DigestToHex(CalcMD5(edit1.Text));
end;
silahkan sobat depmoto run kemudian inputkan karakter huruf, angka, simbol kemudian klik tombol enkripsi maka pada edit2 tampil hasil enkripsi md5 nya.
sekian dulu artikel kali ini, selamat mencoba semoga berguna.

DELPHI7 :: Membuat Menu Ribbon ala Office 2007 di Delphi




menu ribbon
gbr.1
Pastinya dikalangan programer profesional sudah tidak asing lagi dengan devexpress anda bisa melihat-lihat di web Devexpress . Kali ini saya tidak akan membahas harga, keunggulan dari komponen tersebut, namun akan membahas sesuai judul di atas.
Oke langsung ke tkp ya, nah kali ini bagi yang sudah punya komponen devexpress silahkan buka delphinya.
  1. Pada Form tempatkan komponen dxBarManager dan dxRibbon.
  2. Doble klik dxBarManager pada Form1 maka tampil jendela customize, pada tab toolbar klik tombol New, kemudian beri nama menu A1, tambah lagi beri nama menu A2. Proses tersebut untuk membuat kelompok toolbar pada Tab menu.
    customize_dxbarmanager
    gbr.2
  3. Sekarang lihat ke kotak Objek Treeview, lihat objek dxRibbon1, klik sub dxRibbon1tab1, klik kanan pada sub Groups dan pilih add item.
    gbr.3
    gbr.3
  4. Setelah  terbentuk klik TdxRibbonTabgroup pada object treeview, kemudian lihat pada jendela object Inspector, pada Properties ToolBar pilih dxBarManager1Bar1, maka pada dxRibbonTab1 yang ada pada Form1 terbentuk sebuah kelompok toolbar menu A1, untuk menghilangkan tulisan menu A1, hapus di properties caption.
    gbr.4
    gbr.4
  5. Untuk mengganti Caption dxRibbon1Tab1, caranya klik dxRibbon1Tab1 pada form1 ubah Caption di Properties misalnya FORM A.
  6. Selanjutnya kita dapat menambahkan tombol atau text menu dll pada kotak menu A1, caranya klik kanan misal pilih AddLargeButton (membuat tombol besar yang dapat disisipkan text dan gambar). Aturlah propertis dari button tersebut (Caption : Account, name: caccount, LargeGlyph: sisipkan gambar berformat png,jpg atau bmp maksimalm ukuran 24 x 24 px), seperti gambar di bawah ini.
    gbr.5
    gbr.5
  7. Proses pembuatan toolbar menu a sudah terbentuk, selanjutnya membuat toolbar menu b pada kelompok Tab menu FORM A, caranya ulangi point no. 3 diatas sampai no. 6 sehingga terbentuk toolbar menu b. seperti gambar di bawah ini.
    gbr.6
    gbr.6
  8. Untuk menambahkan Tab Menu baru tinggal klik kanan pada Tab menu Form A pilih Add Tab, selanjutnya untuk menambakah kelompok toolbar anda bisa ulangi proses di atas dari point 1 sampai point 7.
    gbr.7
    gbr.7
  9. Untuk menambahkan script pada tombol-tombol menu yang sudah kita buat, caranya sama seperti pada umumnya, tinggal doble klik maka akan langsung diarahkan ke script editor.
itusaja pembahasan kali ini, silahkan di coba semoga bermanfaat.