3dsmax non-modal dialog window

Anyone know how to create a non-modal dialog window? The “MAXScript Message and Query Dialogs” are all modal.

Anyone have an easy workaround for this? :slight_smile:

Messageboxes and queryboxes are inherently modal. If you think about it, it is really just asking for input to complete a process- it’d be like asking ‘1+1’ to not be modal :wink: You can make a custom rollout or .NET form to do what you want- but I wouldn’t call it a messagebox or querybox, since the way you handle it is entirely different (ie, you could never do ‘if querybox “something” == true then’, you’d have to say: ‘local queryForm = CreateAndShowQueryForm()’ and then later on ‘if queryForm.Result == true’, and store the ‘Result’ boolean on the form/rollout, etc.).

I used custom dialogs to make a better popup for error messages:

createDialog rltMyRollout width:p2WindowSize.x height:p2WindowSize.y \
pos:(mouse.screenPos - p2WindowSize/2 - [0,12]) style:#(#style_border) \
lockWidth:true lockHeight:true

It would always pop up at the cursor (to not distract the users focus) and instead of having to click OK to close, it would disappear when cursor’s distance to the dialog crosses a certain distance.
Blender does this a lot - it makes message boxes much less annoying and non-flow-breaking. :slight_smile:
Since it doesn’t interrupt running code, I was working on a version that would automatically grow when another error occurs - so new lines were added whenever the script would report an error.

Thanks guys. This was helpful.