QT获取控件的内容去传参的小发现
2018-01-26 14:17
190 查看
1://处理文本框(内容是一个连续的字符串)的方法(不能直接用文本框的内容去传参,
//否则会有意想不到的错误发生,需要利用先拷贝到数组,然后利用数组去传参),
#include <QStringList>
#include <QString>
int argc = 0;
int i = 0;
char *argv[10]={NULL};
QString str;
QStringList strList;
char argv_buf[1024]={0};
int buf_len = 0;
str = ui->can_file->text(); //获取单行输入框的内容
strList= str.split(" ",QString::SkipEmptyParts);将单行输入框的内容按空格进行切割,并且去除多余空格,返回值是字符串列表
str = strList[0];
strncpy(&argv_buf[buf_len],str.toStdString().c_str(),strlen(str.toStdString().c_str())); //将str转化为C标准字符串,并且拷贝给数组,
argv[1]=&argv_buf[buf_len]; //让指针去指向这个数组
buf_len += strlen(str.toStdString().c_str());
argv_buf[buf_len] = '\0';
buf_len+=1;
。。。。。。
argv[argc] = NULL;
canconfig_main(argc, argv,ui); //传参调用canconfig_main函数
//处理文本框(内容是不连续的字符串)的方法(不能直接用文本框的内容去传参,
//否则会有意想不到的错误发生,需要利用先拷贝到数组,然后利用数组去传参),
bzero(argv_buf,1024);
str = ui->can_con_cmd->text();
strList= str.split(" ",QString::SkipEmptyParts);
argc = strList.count();
for(i = 0;i<argc;i++)
{
str = strList[i];
strncpy(&argv_buf[buf_len],str.toStdString().c_str(),strlen(str.toStdString().c_str()));
argv[i]=&argv_buf[buf_len];
buf_len += strlen(str.toStdString().c_str());
argv_buf[buf_len] = '\0';
buf_len+=1;
}
argv[argc] = NULL;
canconfig_main(argc, argv,ui); //传参调用canconfig_main函数
}
//否则会有意想不到的错误发生,需要利用先拷贝到数组,然后利用数组去传参),
#include <QStringList>
#include <QString>
int argc = 0;
int i = 0;
char *argv[10]={NULL};
QString str;
QStringList strList;
char argv_buf[1024]={0};
int buf_len = 0;
str = ui->can_file->text(); //获取单行输入框的内容
strList= str.split(" ",QString::SkipEmptyParts);将单行输入框的内容按空格进行切割,并且去除多余空格,返回值是字符串列表
str = strList[0];
strncpy(&argv_buf[buf_len],str.toStdString().c_str(),strlen(str.toStdString().c_str())); //将str转化为C标准字符串,并且拷贝给数组,
argv[1]=&argv_buf[buf_len]; //让指针去指向这个数组
buf_len += strlen(str.toStdString().c_str());
argv_buf[buf_len] = '\0';
buf_len+=1;
。。。。。。
argv[argc] = NULL;
canconfig_main(argc, argv,ui); //传参调用canconfig_main函数
//处理文本框(内容是不连续的字符串)的方法(不能直接用文本框的内容去传参,
//否则会有意想不到的错误发生,需要利用先拷贝到数组,然后利用数组去传参),
bzero(argv_buf,1024);
str = ui->can_con_cmd->text();
strList= str.split(" ",QString::SkipEmptyParts);
argc = strList.count();
for(i = 0;i<argc;i++)
{
str = strList[i];
strncpy(&argv_buf[buf_len],str.toStdString().c_str(),strlen(str.toStdString().c_str()));
argv[i]=&argv_buf[buf_len];
buf_len += strlen(str.toStdString().c_str());
argv_buf[buf_len] = '\0';
buf_len+=1;
}
argv[argc] = NULL;
canconfig_main(argc, argv,ui); //传参调用canconfig_main函数
}
相关文章推荐
- Apose.word控件获取书签中的内容并复制到一个新的word文档中
- C#如何获取其他程序ListView控件中的内容 含源码
- ASP.Net访问母版页(MasterPage)控件、属性、方法及母版页中调用内容页,获取用户自定义控件里面的子控件的方法
- 在WPF中获取DataGridTemplateColumn模板定义的内容控件
- NSIS ---使用nsDialogs创建自定义页面,并获取输入到控件中的内容保存到一个XML文档中
- 在WPF中获取DataGridTemplateColumn模板定义的内容控件
- C#使用WebClient获取给定地址的内容(POST方式传参)
- [VC++6.0]如何设置和获取IP地址控件的内容
- VB.net实现从ListView控件中异地获取文本内容源代码
- 编辑框Edit_列表框ListBox_组合框ComBox默认内容设置以及获取IP控件内容
- Qt中实时将Qtableview中的内容显示在相应的控件上
- fragment2中获取fragment1布局,找到控件设置f1里边的内容
- vc6.0设置和获取IP地址控件的内容
- list控件遍历获取内容
- 在内容页中怎么获取master页的控件引用
- Qt如何获取控件的坐标
- 如何获取模版列中的控件的内容?
- 获取网页内容,调用语音控件
- pb中获取多行文本编辑框(mle控件)指定行的内容
- .net知识系列之三:(html提交表单的方式,html控件,获取html表单的内容,sql注入,html服务器控件,net服务器控件)