[Gtk-sharp-list] How to show dialog modal and wait for it?
Christian Hoff
christian_hoff at gmx.net
Fri Dec 25 03:52:46 EST 2009
Maciej Pilichowski wrote:
> Hi,
>
> I know, the lamest question there can ever be, but to my surprise I
> cannot achieve this simple goal with Gtk#.
>
> I copied the message dialog example code from the web, it should
> create dialog, show it (so far so good) and wait for it to close. But
> it does not wait -- the main code continue executing.
>
> MessageDialog md = new MessageDialog
> (this, DialogFlags.Modal, MessageType.Error, ButtonsType.Close,
> "some error");
>
> md.Run ();
>
I think that you're missing a call to hide the dialog window. If you
insert a md.Hide (); statement after the md.Run (); line everything
should work fine.
By now I would expect that your code stops executing until a button is
pressed on the dialog, but that afterwards the dialog might remain shown.
If it still doesn't work out: What is the Gtk.Response type returned by
"(Gtk.ResponseType) dialog.Run ();"? Does the whole thing work if you
use "null" as the parent window (first argument to constructor)?
Hope this helps,
Christian
> // <-- here, I would like to stop and wait for dialog to be closed
> md.Destroy();
>
More information about the Gtk-sharp-list
mailing list