Arsip: help masalah bit button

 
user image
more 18 years ago

putukaca

hi saya ada potongan code tapi ga mau berjalan sesuai harapan

procedure TfAbsensi.btnCariClick(Sender: TObject);
begin
  fListKyw:= TfListKyw.Create(Self);
  fListKyw.ShowModal;
  if fListKyw.ModalResult= mrOK then
  begin
    edtKdKyw.Text:= fListKyw.qCariid_kyw.Value;
    edtNama.Text:= fListKyw.qCarinama.Value;
    edtDept.Text:= fListKyw.qCaribagian.Value;
    edtJbt.Text:= fListKyw.qCarinjabatan.Value;
    Cmb1.SetFocus;
  end; 
  fListKyw.Free;
end;
di flistKyw ada bitbtn yang propertinya sudah saya set kind=btOK dan modalResult-nya otomatis jadi mrOK. nah mengapa pada saat saya tekan bitbtn tsb kok datanya ga ada yang ngisi seperti yang tertulis di kode tsb apa ya kira2 sebabnya.
user image
more 18 years ago

_lmz

@putukaca: hi saya ada potongan code tapi ga mau berjalan sesuai harapan

procedure TfAbsensi.btnCariClick(Sender: TObject);
begin
  fListKyw:= TfListKyw.Create(Self);
  fListKyw.ShowModal;
  if fListKyw.ModalResult= mrOK then
  begin
    edtKdKyw.Text:= fListKyw.qCariid_kyw.Value;
    edtNama.Text:= fListKyw.qCarinama.Value;
    edtDept.Text:= fListKyw.qCaribagian.Value;
    edtJbt.Text:= fListKyw.qCarinjabatan.Value;
    Cmb1.SetFocus;
  end; 
  fListKyw.Free;
end;
di flistKyw ada bitbtn yang propertinya sudah saya set kind=btOK dan modalResult-nya otomatis jadi mrOK. nah mengapa pada saat saya tekan bitbtn tsb kok datanya ga ada yang ngisi seperti yang tertulis di kode tsb apa ya kira2 sebabnya.
Biasanya sih saya pakainya seperti ini:

  if SomeForm.ShowModal = mrOK then
    ...
user image
more 18 years ago

putukaca

hi _ lmz apa bedanya dengan kode saya ya. maksud saya ketika btnCariClick di jalankan maka fLisKyw akan ditampilkan (dipanggil dari fAbsensi). nah di sini saya ada fasilitas search nama karyawan. nah di fListKyw ada bitbtn yang propertinya udah saya set spt yg saya utarakan sebelumnya. jika data yg saya cari ketemu dan saya tekan bitbtn tsb maka saya ingin pernyataan di bawah

if fListKyw.ModalResult= mrOK then
akan dijalankan. tetapi kok ga mau dijalankan kode berikut

    edtKdKyw.Text:= fListKyw.qCariid_kyw.Value;
    edtNama.Text:= fListKyw.qCarinama.Value;
    edtDept.Text:= fListKyw.qCaribagian.Value;
    edtJbt.Text:= fListKyw.qCarinjabatan.Value;
atau ga ngisi semua tEdit tsb thank's
user image
more 18 years ago

_lmz

@putukaca: apa bedanya dengan kode saya ya.
ya itu, mestinya gak ada bedanya :) Gak tau lagi deh...
user image
more 18 years ago

putukaca

hi _lmz kalo saya pake yang if fListKyw.ModalResult= mrOK then (saran _lmz) saat prg dijalankan from flistkyw langsung close dan pernyataan di bawahnya ga dijalankan. gimana nih help me.
user image
more 18 years ago

jrp

Mungkin kode tersebut sudah dijalankan, tapi karena nilai yang diisikan ke edt kosong, jadi kelihatannya belum dijalankan. Coba dibuktikan pakai debugger, atau dengan ShowMessage seperti ini:
procedure TfAbsensi.btnCariClick(Sender: TObject);
begin
  fListKyw:= TfListKyw.Create(Self);
  fListKyw.ShowModal;
  if fListKyw.ModalResult= mrOK then
  begin
    ShowMessage(fListKyw.qCariid_kyw.Value);
    ShowMessage(fListKyw.qCarinama.Value);
    ShowMessage(fListKyw.qCaribagian.Value);   
    ShowMessage(fListKyw.qCarinjabatan.Value);
    edtKdKyw.Text:= fListKyw.qCariid_kyw.Value;
    edtNama.Text:= fListKyw.qCarinama.Value;
    edtDept.Text:= fListKyw.qCaribagian.Value;
    edtJbt.Text:= fListKyw.qCarinjabatan.Value;
    Cmb1.SetFocus;
  end; 
  fListKyw.Free;
end;
Kalau kosong, berarti nilai yang mau dimasukkan ke edt
memang kosong, jadi yg salah bukan di bagian program yg anda berikan. O ya, fListKyw.qCariid_kyw dan teman-temannya itu obyek apa? Kalau misalnya field, pakai .AsString saja daripada .Value karena toh di assign ke TEdit.Text yang menerima string. jrp
user image
more 18 years ago

bangfauzan

Begini purwacaraka: Properti Kind dalam bitbutton adalah untuk menutup form (dan biasanya digunakan untuk form Modal) kemudian mengembalikan ModalResult (entah mrOK, mrCancel, mrYes, dll) kepada pemanggilnya. kecuali kalau Kind bernilai bkCustom (default), maka perilakunya sama dengan button biasa. Jadi : solusi masalah anda adalah : alternatif I : ganti Kind menjadi btCustom alternatif II : pake caranya lmz misalnya anda punya 2 form (Form1 sebagai form utama dan Form2 sebagai isian data) anggap bahwa untuk memanggil form2 anda pake button1 di Form1 , maka pada onclick anda isi: if Form2.ShowModal = mrOK then begin .......... .......... end; semoga berhasil
user image
more 18 years ago

_lmz

@bangfauzan: Begini purwacaraka: Properti Kind dalam bitbutton adalah untuk menutup form (dan biasanya digunakan untuk form Modal) kemudian mengembalikan ModalResult (entah mrOK, mrCancel, mrYes, dll) kepada pemanggilnya. kecuali kalau Kind bernilai bkCustom (default), maka perilakunya sama dengan button biasa. Jadi : solusi masalah anda adalah : alternatif I : ganti Kind menjadi btCustom alternatif II : pake caranya lmz misalnya anda punya 2 form (Form1 sebagai form utama dan Form2 sebagai isian data) anggap bahwa untuk memanggil form2 anda pake button1 di Form1 , maka pada onclick anda isi: if Form2.ShowModal = mrOK then begin semoga berhasil
Weks. Jadi ragu sendiri... Solusi saya itu cuma akan berhasil kalau formnya ada nilai kembali ModalResult... Kalau Kindnya diganti btCustom tapi ModalResultnya tidak jadi mrOK (jadi mrNone?) ya percuma. Gini saja: Kalau mas putukaca sudah menjalankan seperti punyanya mas jrp dan masih gagal, dan mas putukaca yakin bahwa ini adalah "bug dalam delphi" ya: 1. Kecilkan jumlah code yang menampilkan bug ini. Buatlah aplikasi baru dengan dua form. Form pertama berisi statement u/ ShowModal form kedua dan mengecek hasilnya. Form kedua berisi BitBtn seperti milik mas putukaca sekarang. Cobalah, apakah masih gagal? 2. Apabila tidak gagal, coba lihat bentuk teks dari DFM anda. Bandingkan dengan DFM aplikasi anda yang sekarang (Absensi?). Tentunya yang dibandingkan bagian BitBtnnya saja... Adakah yang berbeda? Coba diutak-atik dari perbedaan itu... 3. Apabila gagal: post bagian yang relevan dari .pas Form pertama dan .dfm Form kedua di sini.
user image
more 18 years ago

bangfauzan

Mas Lmz, Kata mas PUTU sekarang Kind-nya kan bkOK, bukan yang lain kan? terus script mas PUTU ga ter-eksekusi, itu karena Kind-nya bkOK. Jadi Solusinya : dua alternatif di atas. boleh mengganti kind -nya menjadi bkCustom, atau tetep bkOK tapi pake caranya mas lmz. Cukup jelas kan?
user image
more 18 years ago

bangfauzan

OOps............. ya, Property Modal Resul harus dipastikan tidak bernilai mrNone.
more ...
  • Pages:
  • 1
  • 2
Share to

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

Random Topic

Local Business Directory, Search Engine Submission & SEO Tools FreeWebSubmission.com SonicRun.com