新人求助:如何在Labwindows中一个主面板中调用其他面板?
如题,已经做好了两个工程,希望把它们通过一个主面板调用,主面板里有两个按钮分别打开两个工程中的面板,用DLL链接总是报错,求助呀~~{:soso_e199:} LaunchExecutableEx ("*.exe /C full", LE_SHOWMINIMIZED, &g_exeHandle); 遗忘的足迹 发表于 2015-4-23 20:06LaunchExecutableEx ("*.exe /C full", LE_SHOWMINIMIZED, &g_exeHandle);
需要添加什么头文件吗?还有这样调用的面板可以直接运行它对应的程序吗? 这是调用你编好程序的exe文件,没什么头文件,提前声明一下面板句柄就好。 这是调用你编好程序的exe文件,没什么头文件,提前声明一下面板句柄就好。 {:soso_e121:}好的 我先试试~谢谢啦 遗忘的足迹 发表于 2015-4-24 09:14
这是调用你编好程序的exe文件,没什么头文件,提前声明一下面板句柄就好。
运行不报错了,但是我点击BUTTON然后执行这个语句想调用一个exe就不行,还把电脑跑死了,怎么回事呢 遗忘的足迹 发表于 2015-4-24 09:14
这是调用你编好程序的exe文件,没什么头文件,提前声明一下面板句柄就好。
#include <utility.h>
#include <cvirte.h>
#include <userint.h>
#include "parent.h"
static int panelHandle;
static int child1;
static int child2;
int main (int argc, char *argv[])
{
if (InitCVIRTE (0, argv, 0) == 0)
return -1; /* out of memory */
if ((panelHandle = LoadPanel (0, "parent.uir", PANEL)) < 0)
return -1;
DisplayPanel (panelHandle);
RunUserInterface ();
DiscardPanel (panelHandle);
return 0;
}
int CVICALLBACK COMMANDBUTTON (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
LaunchExecutableEx ("C meter.ece", LE_SHOWMAXIMIZED, &child1);
RetireExecutableHandle (child1);
break;
}
return 0;
}
int CVICALLBACK COMMANDBUTTON_2 (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
LaunchExecutableEx ("P meter.ece", LE_SHOWMAXIMIZED, &child2);
RetireExecutableHandle (child2);
break;
}
return 0;
}
int CVICALLBACK CLOSE (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
QuitUserInterface (0);
break;
}
return 0;
}
麻烦你看下我的程序还需要添加什么语句吗
遗忘的足迹 发表于 2015-4-24 09:14
这是调用你编好程序的exe文件,没什么头文件,提前声明一下面板句柄就好。
#include <utility.h>
#include <cvirte.h>
#include <userint.h>
#include "parent.h"
static int panelHandle;
static int child1;
static int child2;
int main (int argc, char *argv[])
{
if (InitCVIRTE (0, argv, 0) == 0)
return -1; /* out of memory */
if ((panelHandle = LoadPanel (0, "parent.uir", PANEL)) < 0)
return -1;
DisplayPanel (panelHandle);
RunUserInterface ();
DiscardPanel (panelHandle);
return 0;
}
int CVICALLBACK COMMANDBUTTON (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
LaunchExecutableEx ("C meter.ece", LE_SHOWMAXIMIZED, &child1);
RetireExecutableHandle (child1);
break;
}
return 0;
}
int CVICALLBACK COMMANDBUTTON_2 (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
LaunchExecutableEx ("P meter.ece", LE_SHOWMAXIMIZED, &child2);
RetireExecutableHandle (child2);
break;
}
return 0;
}
int CVICALLBACK CLOSE (int panel, int control, int event,
void *callbackData, int eventData1, int eventData2)
{
switch (event)
{
case EVENT_COMMIT:
QuitUserInterface (0);
break;
}
return 0;
}
麻烦你看下我的程序还需要添加什么语句吗
遗忘的足迹 发表于 2015-4-24 09:14
这是调用你编好程序的exe文件,没什么头文件,提前声明一下面板句柄就好。
好使了,谢谢哈 没事,互相学习
页:
[1]