Arsip: Menu Dan Submenu DiLoad Dari Database

more 16 years ago
ganang
OM-om,Mas-mas,Bro-Bro para delphi expert
sblmnya maaf ngrepotin, cz cari-cari dibuku,forum,google, blm ketemu ada yang bahas....
kmrn aq ngliat program aplikasi yang menu dan submenu formnya tuh diload dr database...jadi bisa ditambahkan menu dan submenunya langsung dari database, tanpa menambah dari komponen Menu,KOK BISA YACH
gimana yach caranya????
Tolong Pencerahannya YAch...
MakacIiihhh :D

more 16 years ago
eksant
hehehe....
pake aja TComponent:
for i := 0 to ComponentCount - 1 do
begin
if (frmMain.Components[i] is TAdvPage) then
begin
if frmMain.Components[i].Tag = 1 then
begin
sPageMenu := frmMain.Components[i].Name;
end;
if frmMain.Components[i].Tag = 2 then
begin
sPageMenu := frmMain.Components[i].Name;
end;
end;
if (Self.Components[i] is TAdvGlowButton) then
begin
if Self.Components[i].Tag = 1 then
begin
...
[simpan ke database]
...
end;
end;
end;
-singkat kata singkat cerita:
1. Cari ComponentName & Component.Caption di MainMenu
2. Kalo ketemu, tanyain dulu punya caption ga..?
3. Kalo ada caption, ajak ke kamar database
4. Kurung aja Component.Nama & Component.Caption sampai nanti dipanggil
5. Kalo pingin manggil, teriakan Tab = 1, kl Tab = 0 dia pasti ngumpet dikamar
6. Berdoa, berterima kasih
7. Tetap berusaha mencari

more 16 years ago
n3o_cybertech
OM-om,Mas-mas,Bro-Bro para delphi expert sblmnya maaf ngrepotin, cz cari-cari dibuku,forum,google, blm ketemu ada yang bahas.... kmrn aq ngliat program aplikasi yang menu dan submenu formnya tuh diload dr database...jadi bisa ditambahkan menu dan submenunya langsung dari database, tanpa menambah dari komponen Menu,KOK BISA YACH gimana yach caranya???? Tolong Pencerahannya YAch... MakacIiihhh Very Happypake aja metode komponen runtime...dulu aq juga pernah buat kayak gituan, besok deh abis lebaran tak kasih tutorialnya...

more 16 years ago
eksant
iklan dulu...
http://pascal-id.org/thread/unknown/40169/view-old-thread/#40169

more 16 years ago
reev
Soal menu dan submenu diload dari db menurut saya sih, ga' rumit-rumit amat. Asalkan kolom tabelnya minimal 4: id menu (atau tag), caption, id parent menu, dan subrutin/prosedur yang dipanggil. Bisa juga ditambah yang lainnya, misalnya hotkey, glyph, dsb.
Yang jadi soal, bagaimana saving dan loading prosedurnya? Kalau pake BlobStream.Write(TNotifyEvent(Menu1.Onclick)) bisa ga' ya? Pencerahannya dong...?

more 16 years ago
DelphiExpert
Saya asumsikan menggunakan TMenuItem (TMainMenu, TPopupMenu)...
Sudah lama tidak berkontribusi dengan benar, mumpung masih ada waktu senggang boleh kita bahas lagi (padahal udah pernah dibahas) :)
1. Untuk membuat sesuatu harus tahu medan dan karakteristik target yg diinginkan.
2. Pengetahuan membuat object/component saat runtime mutlak diperlukan
3. Diketahui: Struktur menu items membentuk hirarki tree, artinya ada root & child items
3. Untuk itu procedure secara umum bisa kita buat sbb (catatan: TMainMenu harus diinsertkan/dibuat dulu dalam form):
function InsertMenu(const Root: TMenuItem; const Caption: string;
const OnClick: TNotifyEvent = nil; const Tag: Integer = 0): TMenuItem;
begin
Result:= TMenuItem.Create(Root.Owner);
try
Result.Caption:= Caption;
Result.Tag:= Tag;
Result.OnClick:= OnClick;
Root.Add(Result);
except
FreeAndNil(Result);
end;
end;
Guna mengetahui cara kerja-nya, praktekkan membuat menu-items saat runtime dng hard-code:
procedure TForm1.FormCreate(Sender: TObject);
var Item: TMenuItem;
begin
// release / reset all menu items
// tergantung kebutuhan, tidak harus root yg direset,
// bisa sub menu items tertentu saja
MainMenu1.Items.Clear;
// 1). susun / buat root menu items (File)
Item:= InsertMenu(MainMenu1.Items, '&File');
// tambahkan menu items utk menu File
InsertMenu(Item, 'Open', OnMenuFileClick, 0);
InsertMenu(Item, 'Save', OnMenuFileClick, 1);
InsertMenu(Item, '-'); // buat separator, cukup set caption dng char -
InsertMenu(Item, 'Exit', OnMenuFileClick, 2);
// 2). susun / buat root menu items (Tools)
Item:= InsertMenu(MainMenu1.Items, '&Tools');
// tambahkan menu items utk menu Tools
InsertMenu(Item, '&Options', OnMenuToolsClick, 0);
// ** 3). susun / buat root menu items (Help)
Item:= InsertMenu(MainMenu1.Items, '&Help');
InsertMenu(Item, '&About', OnMenuHelpClick, 0);
end;
TNotifyEvent adalah type procedure yg banyak digunakan event2 standard, deklarasinya sbb:
type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
procedure OnMenuFileClick(Sender: TObject); // TNotifyEvent
procedure OnMenuToolsClick(Sender: TObject); // TNotifyEvent
procedure OnMenuHelpClick(Sender: TObject); // TNotifyEvent
public
{ Public declarations }
end;
implementation
...
procedure TForm1.OnMenuFileClick(Sender: TObject);
begin
case TMenuItem(Sender).Tag of
0: // do open
1: // do save
2: Close; // terminate app
end;
end;
procedure TForm1.OnMenuHelpClick(Sender: TObject);
begin
end;
procedure TForm1.OnMenuToolsClick(Sender: TObject);
begin
end;
nah, setelah mengetahui cara kerja dan penggunaannya, tinggal disesuaikan saja isi menu2 items dng data yg tersimpan di database, jangan lupa hirarki table harus terdapat field root & caption.
root digunakan utk pengkategorian group menu, sedangkan caption utk set title menu.
Secara teknis kemungkinan perlu dibuat dulu procedure2 dinamis lainnya utk menghandle aksi menu berdasar kategori, misal: load dinamic Form dari DLL dan sebagainya. Ini untuk menghindari adanya hardcode terhadap aksi menu berdasar TAG.
more 16 years ago
ganang
Om N3o boleh tuch tutorialnya....
minal Aidin Wal faidzin yooo tuk smuanyoooo
udah habis lebaran nich
ditunggu loh tutorialnya
alvonz,eksant,n mas DelEx thx bnyk akan kucoba

more 16 years ago
simple_code
Numpang OOT :
@om DE emang bener bener Delphi Expert
ga malu malui ngebawa nama DelphiExpert...
ngelmune ra umum... jan... sarapannya apaan ya bisa kaya gitu..??
bukan coding nya yang aku salut, tapi metode ngejelasinnya
wuih..wuih... wuih....

more 16 years ago
mas_kofa
@simple_code: ngelmune ra umum... jan... sarapannya apaan ya bisa kaya gitu..?? bukan coding nya yang aku salut, tapi metode ngejelasinnya wuih..wuih... wuih....sarapannya cukup nasi kucing.....[52 bungkus]...xixiixiixixixixxxx
more ...
- Pages:
- 1
- 2
reply |
Report Obsolete
AI Forward

🚀 We're thrilled to partner with Alibaba Cloud for "AI Forward - Alibaba Cloud Global Developer Summit 2025" in Jakarta! Join us and explore the future of AI. Register now:
https://int.alibabacloud.com/m/1000400772/
#AlibabaCloud #DeveloperSummit #Jakarta #AIFORWARD
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 4 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 4 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 5 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 12 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 12 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 12 years ago
Random Topic
- client dataset not in insert or edit data
by bandit88 in Tip n Trik Pemrograman more 16 years ago - nempelin TImage ke komponen spreadsheet devexpress
by brainwashed in Tip n Trik Pemrograman more 17 years ago - ada yang tau syntax memasukkan data real ke tabel sql ?
by micrens in Tip n Trik Pemrograman more 17 years ago - KSpoold Disinfector 1.0 - Freeware
by DelphiExpert in OpenSource dan Gratis more 17 years ago - [ASk]penulisan sintax sql di delphi...
by Iansx in MySQL more 18 years ago - combobox dan range
by ghopal in Tip n Trik Pemrograman more 13 years ago - kriptografi
by tara in Tip n Trik Pemrograman more 15 years ago - cara non aktif login
by trimbil in Tip n Trik Pemrograman more 17 years ago - Membuat aplikasi tetap terlihat pada saat fullscreen
by reza_elka in Tip n Trik Pemrograman more 13 years ago - move dalam delphi
by rusli_chow in Tip n Trik Pemrograman more 17 years ago