Programmatically open a non-modal LabVIEW window from a callback VI or DLL with Open VI Reference and an Invoke node. Use this functionality to let your VI interact with a window without blocking the functionality of other windows.

A non-modal window is a window of a user interface that does not prevent a user from interacting with other parts of the user interface while the window is open.

You cannot open a non-modal window from a LabVIEW callback VI nor a DLL while any other process is running. If you want the callback VI or DLL to call a non-modal window, you must do so programmatically.

To call a non-modal window in LabVIEW programmatically, complete the following steps.

  1. Add an Open VI Reference node to the block diagram.
  2. Wire the path for the non-modal window you want to open to the vi path input.
    Note You only can wire a path for a VI-based window to the vi path input. You can use the Call Library Function Node to open a window that is not VI-based. Before calling a window from a LabVIEW callback VI or DLL, be sure that window is configured as modal. Configure modality settings with File » VI Properties » Window Appearance » Customize and choose a Window Behavior setting.
  3. Add an Invoke Node to the block diagram.
  4. Wire the vi reference output of the Open VI Reference node to the reference input of the Invoke Node.
  5. Select Run VI as the method on the Invoke Node.
  6. Wire a FALSE Boolean constant to the Wait Until Done input of the method.