In this tutorial you learn:
Note:
Start Visual Studio and add a Windows Forms Application project under Visual C++/CLR.
Visual Studio 2010 with .Net framework 4 should work well with Solid Edge 20.
Specify a suitable name for the project and a location and click OK.
Inside the Form1 class, add a variable oApp for Solid Edge.
public ref class Form1 : public... System::Windows::Forms::Form
{
public: Form1(void)
{
InitializeComponent();
}
SolidEdgeFramework::Application^ oApp;
Type^ type
Note: Intellisense may not be available for C++/CLI in VS2010.
Build the project and start Debugging by pressing F5.
Click the Start Solid Edge button and nothing happens after several minutes of waiting.
Right click the TaskBar and select Task Manager. Take the Processes tab.
Solid Edge will be seen listed in the Image Name column as shown below:
Back to Visual Studio, double click the Show button and add the following line of code for the button:
oApp->Visible = true;
There is no way however to know when Solid Edge has fully loaded and when to click the Show button. You can add the wait cursor very easily:
System::Windows::Forms::Cursor::Current = System::Windows::Forms::Cursors::WaitCursor;
Type^ type = Type::GetTypeFromProgID("SolidEdge.Application");
oApp = (SolidEdgeFramework::Application^)Activator::CreateInstance(type);
System::Windows::Forms::Cursor::Current = System::Windows::Forms::Cursors::Default;
Run the program again and click the Start Solid Edge button and after the wait cursor is gone, click the Show button. Solid Edge now should be visible.
For the Hide button, simply add oApp->Visible = false; to its Click event.
Click the Show and Hide buttons alternatingly. Solid Edge should appear and disappear.
For the Display Version button, add the code:
label1->Text = oApp->Name + " - " + oApp->Version;
Clicking the button should display the current version of Solid Edge in the label below the button:
For the Append to Status Bar button, type
oApp->StatusBar += txtStatus->Text;
Clicking this button multiple times should render the status bar as shown below:
The button simply appends the contents of the textbox txtStatus to Solid Edge’s status bar.
For the checkbox Display Status Bar add the code:
oApp->StatusBarVisible = chkStatus->Checked;
Both sides of the statement are of type bool and this will toggle the display of the status bar depending upon the checked state of the check box.
Similarly, for the Display Edge Bar check box, add
oApp->EdgeBarVisible = chkEdge->Checked;
Finally, for the Quit Solid Edge button, type oApp->Quit();
This will quit Solid Edge but the C++ application will continue to run.
you can add System::Environment::Exit(0); to the Close button to terminate to application.
Instead of invoking Solid Edge every time, it is possible to simply connect to a running instance of Solid Edge. For this, add a button Connect to Solid Edge to the form and add the code:
oApp = (SolidEdgeFramwwork::Application^)Marshal::GetActiveObject("SolidEdge.Application");
- How to invoke Solid Edge using C++/CLI i.e. managed C++.
- How to Start-Show-Hide-Stop Solid Edge from the program.
- How to change several properties of Solid Edge.
Start Visual Studio and add a Windows Forms Application project under Visual C++/CLR.
Visual Studio 2010 with .Net framework 4 should work well with Solid Edge 20.
Specify a suitable name for the project and a location and click OK.
Select Solid Edge Framework Type Library from the list. Back to the Property Pages dialog, Solid Edge Framework gets added under References. |
In the Solution Explorer, expand the folder Header Files and select Form.h then click the View Designer button as shown in image besides. Add several buttons and check boxes to the form as shown. View the code for the form and at the end of the existing using statements, add the following: using namespace System; using namespace System::Collections.Generic; . . using namespace SolidEdgeFramework; using namespace System::Runtime::InteropServices; |
public ref class Form1 : public... System::Windows::Forms::Form
{
public: Form1(void)
{
InitializeComponent();
}
SolidEdgeFramework::Application^ oApp;
Type^ type
Note: Intellisense may not be available for C++/CLI in VS2010.
Build the project and start Debugging by pressing F5.
Click the Start Solid Edge button and nothing happens after several minutes of waiting.
Right click the TaskBar and select Task Manager. Take the Processes tab.
Solid Edge will be seen listed in the Image Name column as shown below:
Back to Visual Studio, double click the Show button and add the following line of code for the button:
oApp->Visible = true;
There is no way however to know when Solid Edge has fully loaded and when to click the Show button. You can add the wait cursor very easily:
System::Windows::Forms::Cursor::Current = System::Windows::Forms::Cursors::WaitCursor;
Type^ type = Type::GetTypeFromProgID("SolidEdge.Application");
oApp = (SolidEdgeFramework::Application^)Activator::CreateInstance(type);
System::Windows::Forms::Cursor::Current = System::Windows::Forms::Cursors::Default;
Run the program again and click the Start Solid Edge button and after the wait cursor is gone, click the Show button. Solid Edge now should be visible.
For the Hide button, simply add oApp->Visible = false; to its Click event.
Click the Show and Hide buttons alternatingly. Solid Edge should appear and disappear.
For the Display Version button, add the code:
label1->Text = oApp->Name + " - " + oApp->Version;
Clicking the button should display the current version of Solid Edge in the label below the button:
For the Append to Status Bar button, type
oApp->StatusBar += txtStatus->Text;
Clicking this button multiple times should render the status bar as shown below:
The button simply appends the contents of the textbox txtStatus to Solid Edge’s status bar.
For the checkbox Display Status Bar add the code:
oApp->StatusBarVisible = chkStatus->Checked;
Both sides of the statement are of type bool and this will toggle the display of the status bar depending upon the checked state of the check box.
Similarly, for the Display Edge Bar check box, add
oApp->EdgeBarVisible = chkEdge->Checked;
Finally, for the Quit Solid Edge button, type oApp->Quit();
This will quit Solid Edge but the C++ application will continue to run.
you can add System::Environment::Exit(0); to the Close button to terminate to application.
Instead of invoking Solid Edge every time, it is possible to simply connect to a running instance of Solid Edge. For this, add a button Connect to Solid Edge to the form and add the code:
oApp = (SolidEdgeFramwwork::Application^)Marshal::GetActiveObject("SolidEdge.Application");
Solid Edge knowledge sharing, tutorials, videos, tips, CAD cartoons, SE crosswords, puzzles, games, SE events, SE job opportunities.
Keep yourself updated, contribute or just browse...
No comments:
Post a Comment