Calling MessageBox in Borland C++Builder

Please support our C++ advertiser: Intel Parallel Studio Home
Thread Solved

Join Date: Oct 2004
Posts: 2
Reputation: Pretorak is an unknown quantity at this point 
Solved Threads: 0
Pretorak Pretorak is offline Offline
Newbie Poster

Calling MessageBox in Borland C++Builder

 
0
  #1
Oct 22nd, 2004
Hello everyone,
I don't often use forums for getting answers, but I simply cannot seem to find how to fire a MessageBox under Borland Builder...I could use MessageDlg which works, but I only want an OK button, so I would rather go with MessageBox...code sample:
  1. void __fastcall TForm1::cmdPlayClick(TObject *Sender)
  2. {
  3. if (TForm1::txtLogin->Text=="")
  4. {
  5. ::MessageBox("Invalid Login Name!", "Error!", MB_OK, 0);
  6. return;
  7. }
With MessageDlg:
  1. if (TForm1::txtPass->Text=="")
  2. {
  3. MessageDlg("Invalid Password!", mtError, mbOKCancel, 0);
  4. return;
  5. }
  6. TForm1::LoadLauncher();
  7. }
NOTE: I know it defines mbOK as a variable for TMsgDlgButtons, but it fires an error that it's NOT a recognized variable...I may be overlooking something, but it's late and I've been coding for hours now just getting my ActiveX control to function without causing access violations at memory address 0x000000 (WideString function is your friend.) Next issue will be writing the code to open a file which is like an ini file, but has a different structure (ie: no "[]" but uses "=" as an assignment operator...I *think* I have the groundwork set, but am unfamiliar with C++ file manipulation, I had created a similar program in VB6 and the styles of coding are mixing in my head =)

Thanks in advance for any information.
Reply With Quote Quick reply to this message  
Join Date: Oct 2004
Posts: 4,070
Reputation: vegaseat is just really nice vegaseat is just really nice vegaseat is just really nice vegaseat is just really nice vegaseat is just really nice 
Solved Threads: 938
Moderator
vegaseat's Avatar
vegaseat vegaseat is offline Offline
DaniWeb's Hypocrite

Re: Calling MessageBox in Borland C++Builder

 
0
  #2
Oct 22nd, 2004
I don't have my Builder up anymore, but replace MB_OK with zero and see what happens.
May 'the Google' be with you!
Reply With Quote Quick reply to this message  
Join Date: Oct 2004
Posts: 2
Reputation: Pretorak is an unknown quantity at this point 
Solved Threads: 0
Pretorak Pretorak is offline Offline
Newbie Poster

Re: Calling MessageBox in Borland C++Builder

 
0
  #3
Oct 22nd, 2004
*sigh*
I found my error, in Borland's help files, it gives an example of:
  1. Application->MessageBox(const WideString Text, const WideString Caption,
  2. TMessageButtons Buttons = TMessageButtons() << smbOK,
  3. TMessageStyle Style smsInformation, TMessageButton Default = smbOK,
  4. TMessageButton Escape = smbCancel);
My error was using it in my Unit1.cpp file. Since all my declarations and main code is in the header file, it gave mystery errors and I tried various implementations like TApplication::MessageBox(blah) and stopped getting errors with plain ::MessageBox(blah) I moved the code into my header file and it now works. snippet for future reference:
  1. Application->MessageBox("Message", "Title", Buttons() << btnValue);
  2. //btnValue is MB_OK, etc. for the various button styles.
Like I said previously, it was late and I had the too-many-hours-coding-brain-lock syndrome to recognize that issue. Figured I would reply with my fix. Thanks for your help...off to build my file handling routines =)
Reply With Quote Quick reply to this message  
Join Date: Jun 2005
Posts: 9
Reputation: robgxxx is an unknown quantity at this point 
Solved Threads: 1
robgxxx robgxxx is offline Offline
Newbie Poster

Re: Calling MessageBox in Borland C++Builder

 
0
  #4
Sep 8th, 2007
Hi,

Try this

if( MessageBox(0, (LPSTR) "testing", "Error",
MB_ICONWARNING | MB_OK ) ==MB_OK) //do whatever



regards

Bob


Originally Posted by Pretorak View Post
Hello everyone,
I don't often use forums for getting answers, but I simply cannot seem to find how to fire a MessageBox under Borland Builder...I could use MessageDlg which works, but I only want an OK button, so I would rather go with MessageBox...code sample:
  1. void __fastcall TForm1::cmdPlayClick(TObject *Sender)
  2. {
  3. if (TForm1::txtLogin->Text=="")
  4. {
  5. ::MessageBox("Invalid Login Name!", "Error!", MB_OK, 0);
  6. return;
  7. }
With MessageDlg:
  1. if (TForm1::txtPass->Text=="")
  2. {
  3. MessageDlg("Invalid Password!", mtError, mbOKCancel, 0);
  4. return;
  5. }
  6. TForm1::LoadLauncher();
  7. }
NOTE: I know it defines mbOK as a variable for TMsgDlgButtons, but it fires an error that it's NOT a recognized variable...I may be overlooking something, but it's late and I've been coding for hours now just getting my ActiveX control to function without causing access violations at memory address 0x000000 (WideString function is your friend.) Next issue will be writing the code to open a file which is like an ini file, but has a different structure (ie: no "[]" but uses "=" as an assignment operator...I *think* I have the groundwork set, but am unfamiliar with C++ file manipulation, I had created a similar program in VB6 and the styles of coding are mixing in my head =)

Thanks in advance for any information.
Reply With Quote Quick reply to this message  
Join Date: Jun 2005
Posts: 9
Reputation: robgxxx is an unknown quantity at this point 
Solved Threads: 1
robgxxx robgxxx is offline Offline
Newbie Poster

Re: Calling MessageBox in Borland C++Builder

 
0
  #5
Sep 8th, 2007
Sorry I've just seen that I made a boob, the code
should have been ...

if(MessageBox(0, (LPSTR) "testing","Error",
MB_ICONWARNING | MB_OKCANCEL ) ==IDOK) //do whatever


regards

Bob G
Reply With Quote Quick reply to this message  
Reply

This thread has been marked solved.
Perhaps start a new thread instead?
Message:


Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC