QT控件实现添加删除显示进入docker容器
我安装的docker是windows版本,其他的我不知道会不会有啥区别哈
按钮控件实现添加删除显示容器等功能
这些基础命令也是可以在qt里调用的,在这里我参考的是通过process实现,我实现的大概内容就是
- 通过按钮控件实现
on_pushButton_69_clicked(); - 按钮里用进程process连接按钮的触发事件
connect(ui->控件号, SIGNAL(clicked()), this, SLOT(openProcess()));; - 运行内容
进程->start(“cmd.exe”, QStringList() << “/c” << “docker ps -a”);//这是显示所有容器的命令,要实 现显示需要用readResult,即可实现显示到文本框内,也可以写其他添加容器的命令,在命令行也可以验证是否成功生成容器
运行内容里一定要注意docker语句的空格,不确定的可以写成QStringlist通过qdebug打印输出语句有没有错,空格缺失一定运行不成功
进入容器
由于我是需要运行qt的同时弹出命令行窗口,所以就没有用qprocess了,用的system
QString f =ui->readtext->toPlainText();
QString fe ="docker attach ";
f.prepend(fe);
qDebug()<<f;
QByteArray aa;
aa=f.toLatin1();
char* b=aa.data();
system(b);
prepend函数是我用来拼接我的docker attach 以及我获取的容器编号,而由于system函数的参数问题,就给它们转换了一下,直接放进去是不成功的,而且system里直接传变量也是不可以的(排除我太菜的原因0.0)。