Re: message_box and EU 2.3?

new topic     » goto parent     » topic index » view thread      » older message » newer message

Larry,

If you use "RunDemos" (included with Win32Lib) to look at "MsgBox" example,
it will show you how to make multiple lines in a Message box.

Following is that same example re-made into a "Template" which I will
include with my "Template Handler".  (It seems likely "CrLf" is not actually
needed, just linefeed, as others have mentioned.)

Dan Moyer


--  Creating a WINDOWS MESSAGE BOX

--  you can create a "standard" Windows message box
-- containing various icons and user choice buttons,
-- and you can test for what the user clicks on in it.

-- start with:     result = message_box(
-- followed by text enclosed in  quotation marks;
-- (separate lines can be created by using  "& CrLf & " after each line)

-- put a comma after the text;
--  followed by a TITLE for the message box in quotes,
--  followed by a comma;

-- following the comma after the title is a value which sets up
-- various buttons in the message box as well as other displayed items;
-- the value can be made up of various constants defined in Win32Lib,
-- which are described below;
-- they can be ADDED together with the "+" operator,
-- as shown below;
--  if the value is zero, a SIMPLE message box is created.



constant CrLf = { 13, 10 } -- carriage return/linefeed

-- this procedure should be made to be called by whatever event should
-- display the message (an error, information, "about" a program, etc)

procedure OnClick_MsgBoxButton()
atom result

    result = message_box(
 "  This is some text in a Message Box;" & CrLf &
 "  you can put line after line of text here," & CrLf &
 "   practically as many as you want" & CrLf & CrLf &
 "   It will expand to a certain degree to fit long lines," & CrLf &
 " but if your lines get really really really long like this one then it
will reach some maximum width and then put some of your text on a new line."
& CrLf & CrLf &
     "   It's generally better to use shorter lines," & CrLf &
 "so you don't exceed the line length of the interpreter.",

               "MESSAGE BOX",       --  THE TITLE OF THE MESSAGE BOX

                0 )                              -- STYLE VALUE FOR VARIOUS
BUTTONS ETC
end procedure

onClick [MsgBoxButton] = routine_id("OnClick_MsgBoxButton")


--    MB_ICONQUESTION+MB_YESNOCANCEL+MB_TASKMODAL

-- which results in showing a question mark icon, with yes/no/cancel
buttons,
-- and the box must be closed by the user before anything else can be done

-- Possible style values for message_box() style sequence:

--    MB_ABORTRETRYIGNORE =  Abort, Retry, Ignore
--    MB_APPLMODAL =  User must respond before doing something else
--    MB_DEFAULT_DESKTOP_ONLY = #20000,
--    MB_DEFBUTTON1 =  First button is default button
--    MB_DEFBUTTON2 =  Second button is default button
--    MB_DEFBUTTON3 =  Third button is default button
--    MB_DEFBUTTON4 =  Fourth button is default button
--    MB_HELP =  Windows 95: Help button generates help event
--    MB_ICONASTERISK =  Lowercase letter i in a circle appears
--    MB_ICONERROR  =  A hand appears
--    MB_ICONEXCLAMATION = Exclamation-point appears in the box
--    MB_ICONHAND =  A hand appears
--    MB_ICONINFORMATION = MB_ICONASTERISK = Lowercase letter i in a circle
appears
--    MB_ICONQUESTION = A question-mark icon appears
--    MB_ICONSTOP = MB_ICONHAND
--    MB_ICONWARNING = MB_ICONEXCLAMATION
--    MB_OK = Message box contains one push button: OK
--    MB_OKCANCEL = Message box contains OK and Cancel
--    MB_RETRYCANCEL =  Message box contains Retry and Cancel
--    MB_RIGHT = Windows 95: The text is right-justified
--    MB_RTLREADING =  Windows 95: For Hebrew and Arabic systems
--    MB_SERVICE_NOTIFICATION = Windows NT: The caller is a service
--    MB_SETFOREGROUND =  Message box becomes the foreground window
--    MB_SYSTEMMODAL  =  All applications suspended until user responds
--    MB_TASKMODAL =  Similar to MB_APPLMODAL
--    MB_YESNO =  Message box contains Yes and No
--    MB_YESNOCANCEL =  Message box contains Yes, No, and Cancel

-- you can test for user actions by testing the return value from the
-- message box function.

-- possible values returned by MessageBox()
--   0 means failure
--      IDABORT = 3,  -- Abort button was selected.
--      IDCANCEL = 2, -- Cancel button was selected.
--      IDIGNORE = 5, -- Ignore button was selected.
--      IDNO = 7,     -- No button was selected.
--      IDOK = 1,     -- OK button was selected.
--      IDRETRY = 4,  -- Retry button was selected.
--      IDYES = 6    -- Yes button was selected.




----- Original Message -----
From: "Larry Mears" <LarryMears at hotmail.com>
To: "EUforum" <EUforum at topica.com>
Sent: Tuesday, September 25, 2001 1:58 PM
Subject: message_box and EU 2.3?


>
>   Is there any way that message_box will display more than
> one line of text?  Also I was wondering how long till
> Euphoria 2.3 is released?  A few weeks or 6 months or more?
>
>   I've only written one windows program with Euphoria so far,
> a fixed field database to keep up with my music collection.
> I already had the data files so it's just about as easy to
> write a new program for the data files than to type new data
> into a existing database program.  Anyway I like Euphoria a
> lot.  I am a hobbiest programmer since 1981. I have used
> Atari BASIC, ACTION!, GFA Basic, HiSoft Basic, OSS Pascal,
> Borland C, Java, and now Euphoria.
>
> Thanks,
> LarryMears at hotmail.com
>
>
>

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu