TestStand 2017 Help
»View Product Info
Download Help (Windows Only)
All user interface examples use the TestStand User Interface (UI) Controls, which are a set of ActiveX controls that implement the common functionality for applications to display, execute, edit, save, and debug test sequences. These ActiveX controls greatly reduce the amount of source code a user interface application requires.
||Note National Instruments strongly recommends that you use the TestStand UI Controls to develop user interface applications.
User interfaces that use the TestStand UI Controls typically perform the following basic operations:
- Configure connections, commands, and other control settings
- Register to handle events the controls generate
- Start TestStand
- Wait in a main event loop until you close the application
- Shut down TestStand
User interfaces can also include a menu bar that contains non-TestStand items and items that invoke TestStand commands.
You can call the TestStand API on objects you create or obtain from the TestStand UI Controls properties, methods, or events. Consider the following guidelines when you call the TestStand API in a user interface that uses the TestStand UI Controls:
- You do not need to create the TestStand Engine. Use the ApplicationMgr.GetEngine method to obtain the Engine object.
- When you call the Engine.NewExecution method to create an execution, the TestStand UI Controls recognize the new execution.
- When you call the Engine.GetSequenceFileEx method to load a sequence file, the TestStand UI Controls do not display the file you load. You must call the ApplicationMgr.OpenSequenceFile method to open and display a file in the user interface.
- You can obtain sequence file and execution references from events or from the SequenceFiles and Executions collections.
- When you hold references to TestStand objects, release them in the handler for the ApplicationMgr.QueryShutdown event when the event handler does not cancel the shut down process.
- The TestStand UI Controls display only the active thread and do not support enabling the ExecMask_TraceAllThreads ExecutionMask constant.
- Do not couple user interfaces to specific sequences.
- Do not use instrumentation code in user interfaces.
- Use UI Messages to communicate information between code modules and user interfaces.
Special Considerations for Setting the Preferred Execution System of a LabVIEW VI
Writing an Application with the TestStand Engine API