Smart Mobile Studio
  • News
  • Forums
  • Download
  • Store
  • Showcases
    • Featured demos
    • The Smart Contest 2013, Round 1 – Graphics
  • Documentation
    • Get the book
    • System requirements
    • Prerequisites
    • Getting started
      • Introduction
      • Application architecture
      • The application object
      • Forms and navigation
      • Message dialogs
      • Themes and styles
    • Project types
      • Visual project
      • Game project
      • Console project
    • Layout manager
    • Networking
      • TW3HttpRequest
      • TW3JSONP
      • Loading files
  • About

Message dialogs

Under delphi you have several ways of displaying a messagebox. If you want a more elaborate messagebox you would call TApplication.messagebox which takes some flags as a parameter, or you can use good old showmessage() to bring up a very simple message for the user.

Under smart ShowMessage simply calls the browser’s built in alert() javascript function. It halts execution and shows the message.

We also have a more advanced dialog which is a part of TCustomApplication that you invoke using ShowDialog(). Since there is no such thing as a modal requester under javascript, you have to catch the results via an event. You can also check to see if a dialog is presently showing. Here are the functions that deals with the dialog:

[sourcecode language=”delphi”]
procedure ShowDialog(aCaption:String;aText: String;
aOptions: TW3AlertOptions);
procedure CloseDialog;
property DialogActive: Boolean;
property OnDialogSelect: TW3AlertSelectEvent;
[/sourcecode]

To display the dialog you could write:

[sourcecode language=”delphi”]
Application.onDialogSelect:=procedure (Sender:TObject;
aResult: TW3AlertResult)
Begin
case aResult of
roYes, roOK: begin end;
roNo, roCancel: begin end;
end;
end;
application.showdialog(‘Welcome’,’select something’,aoYesNo);
[/sourcecode]

And you get a styled dialog which also blocks any background controls from being accessed:

iOS themed alert dialog

iOS themed alert dialog

Pages

  • About
  • Feature Matrix
  • Forums
  • News
  • Release History
  • Download
  • Showcases
    • The Smart Contest 2013, Round 1 – Graphics
  • Store
  • Documentation
    • Creating your own controls
    • Debugging, exceptions and error handling
    • Differences between Delphi and Smart
    • Get the book
    • Getting started
      • Introduction
      • Local storage, session storage and global storage
      • Application architecture
      • The application object
      • Forms and navigation
      • Message dialogs
      • pmSmart Box Model
      • Themes and styles
    • Layout manager
    • Networking
      • Loading files
      • TW3HttpRequest
      • TW3JSONP
    • Prerequisites
    • Real data, talking to sqLite
    • System requirements
    • Project types
      • Visual project
      • Game project
      • Console project

Archives

  • December 2019
  • December 2018
  • November 2018
  • July 2018
  • June 2018
  • February 2018
  • September 2017
  • April 2017
  • November 2016
  • October 2016
  • September 2016
  • April 2016
  • March 2016
  • January 2016
  • October 2015
  • September 2015
  • July 2015
  • April 2015
  • January 2015
  • December 2014
  • October 2014
  • September 2014
  • August 2014
  • July 2014
  • June 2014
  • March 2014
  • February 2014
  • January 2014
  • December 2013
  • November 2013
  • October 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • March 2012
  • February 2012
  • January 2012
  • November 2011
  • October 2011
  • September 2011

Categories

  • Announcements (25)
  • Developers log (119)
  • Documentation (26)
  • News (104)
  • News and articles (16)

WordPress

  • Register
  • Log in
  • WordPress

Subscribe

  • Entries (RSS)
  • Comments (RSS)
© Optimale Systemer AS