MessageDlg Bilgi Gösterme [Çözüldü]

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

MessageDlg Bilgi Gösterme [Çözüldü]

Mesaj gönderen ozcank »

Arkadaşlar Merhaba, Kayıt silme sırasında şu kaydı siliyorsunuz diye messageDlg de göstermek istiyorum ama bir türlü yapamadım kod şu şekilde yardımcı olur musunuz ?

Kod: Tümünü seç

procedure TForm3.BitBtn4Click(Sender: TObject);
begin
  if MADENKAYIT.RecordCount = 0 then
  begin
    MessageDlg('Silinecek Öğrenci Kaydı Yok.', mtError, [mbOk], 0);
    Exit;
  end;
//  MessageDlg(MADENKAYIT.DataSource.DataSet.FieldByName('MD_CEMKODU').AsString);
//  MessageDlg(MADENKAYIT.DataSource.DataSet.FieldByName('MD_ADSOYAD').AsString);
//  MessageDlg(MADENKAYIT.DataSource.DataSet.FieldByName('MD_TCKIMLIK').AsString);
//  MessageDlg(MADENKAYIT.DataSource.DataSet.FieldByName('MD_OGRNO').AsString);
  if MessageDlg('Seçmiş Olduğunuz Öğrenci Kaydı Silinecek. Emin misiniz?', mtConfirmation, [mbYes, mbNo], 0) <> mrYes then Exit;
  MADENKAYIT.Delete();
end;
En son ozcank tarafından 10 Ara 2016 04:58 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
ertank
Kıdemli Üye
Mesajlar: 1716
Kayıt: 12 Eyl 2015 12:45

Re: MessageDlg Bilgi Gösterme

Mesaj gönderen ertank »

Merhaba,

Aşağıdaki gibi deneyebilirsiniz.

Kod: Tümünü seç

procedure TForm3.BitBtn4Click(Sender: TObject);
var
  TempString: string;
begin
  if MADENKAYIT.RecordCount = 0 then
  begin
    MessageDlg('Silinecek Öğrenci Kaydı Yok.', mtError, [mbOk], 0);
    Exit;
  end;
  TempString := 'Aşağıda bilgileri gösterilen kayıt silinecek.';
  TempString := TempString + sLineBreak + 'Cem Kodu: ' + MADENKAYIT.DataSource.DataSet.FieldByName('MD_CEMKODU').AsString;
  TempString := TempString + sLineBreak + 'Adı Soyadı: ' + MADENKAYIT.DataSource.DataSet.FieldByName('MD_ADSOYAD').AsString;
  TempString := TempString + sLineBreak + 'Tc Kimlik No: ' + MADENKAYIT.DataSource.DataSet.FieldByName('MD_TCKIMLIK').AsString;
  TempString := TempString + sLineBreak + 'Öğrenci No' + MADENKAYIT.DataSource.DataSet.FieldByName('MD_OGRNO').AsString;
  TempString := TempString + sLineBreak + sLineBreak + 'Devam edilsin mi?';
  if MessageDlg(TempString, mtConfirmation, [mbYes, mbNo], 0) <> mrYes then Exit();
  MADENKAYIT.Delete();
end;
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: MessageDlg Bilgi Gösterme

Mesaj gönderen ozcank »

Bu hatayı alıyorum
---------------------------
Debugger Exception Notification
---------------------------
Project MADENPRJ1.exe raised exception class EAccessViolation with message 'Access violation at address 004E6854 in module 'MADENPRJ1.exe'. Read of address 00000030'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: MessageDlg Bilgi Gösterme

Mesaj gönderen ozcank »

Bu şekilde kodu kullandım;

Kod: Tümünü seç

procedure TForm3.BitBtn4Click(Sender: TObject);
var
  TempString: string;
begin
BitBtn2.Enabled:=False;
BitBtn3.Enabled:=True;
  if MADENKAYIT.RecordCount = 0 then
  begin
IF MessageDlg('Seçmiş Olduğunuz Öğrenci Kaydı Silinecek. Emin misiniz?', mtConfirmation, [mbYes, mbNo], 0) <> mrYes Then
Exit;
end;
  TempString := TempString + sLineBreak + 'Cem Kodu: ' + MADENKAYIT.DataSource.DataSet.FieldByName('MD_CEMKODU').AsString;
  TempString := TempString + sLineBreak + 'Adı Soyadı: ' + MADENKAYIT.DataSource.DataSet.FieldByName('MD_ADSOYAD').AsString;
  TempString := TempString + sLineBreak + 'Tc Kimlik No: ' + MADENKAYIT.DataSource.DataSet.FieldByName('MD_TCKIMLIK').AsString;
  TempString := TempString + sLineBreak + 'Öğrenci No' + MADENKAYIT.DataSource.DataSet.FieldByName('MD_OGRNO').AsString;
  TempString := TempString + sLineBreak + sLineBreak + 'Devam edilsin mi?';

  if MessageDlg(TempString, mtConfirmation, [mbYes, mbNo], 0) <> mrYes then Exit;
  MADENKAYIT.Delete();
end;
ozcank
Üye
Mesajlar: 937
Kayıt: 28 Nis 2005 05:29

Re: MessageDlg Bilgi Gösterme

Mesaj gönderen ozcank »

ertank kardeşim sorunu biraz araştırarak şu şekilde çözdüm.

Bu şekildeydi ;

Kod: Tümünü seç

TempString := TempString + sLineBreak + 'Cem Kodu: ' + MADENKAYIT.DataSource.DataSet.FieldByName('MD_CEMKODU').AsString;
Bu şekilde yapınca oldu;

Kod: Tümünü seç

TempString := TempString + sLineBreak + 'Cem Kodu: ' + MADENKAYIT.FieldByName('MD_CEMKODU').AsString;
emeğine sağlık çok teşekkür ederim.
Cevapla