用c/c直接开发界面程序好象有以下几种
1、再调用系统api
这一种比较好麻烦的话但开发完毕的效率不高,但按照去练习可以不让你很好的掌握gui程序的原理和技巧。是因为常用的第3种都是故此为基础的,能学会api利于增强更加深入的了解gui程序原理。
2、就使用绘图接口自己画
这种最麻烦的话而且像是范围问题于游戏、虚拟现实等专业领域,比如在用opengl绘图接口可以制作3d程序。
3、动态创建其他封装方法好库
这一种是别人把系统api封装方法那样最好,给了你一个很简单建议使用接口,例如mfc。是对c/c来说,现在比较好流行的有qt,xwidget等gui库,在用简单啊,文档丰富地,并且跨平台不使用,是目前比较好好的选择。如果以前没有用过mfc,个人建议那就别学mfc了,繁琐不过不是跨平台的。
还有一个,如果不是用vs开发,.net里面的一些标准控件也绝对无法应付日常注意的新了,这个总之是现在得用最普遍的。
windget.cpp是类widget的利用代码,,那是qt编译程序生成气体的与ui文件windget.ui随机的类定义文件。
qt做界面用qml,
如果不是是做编辑器、设计器这类专业性强的工具,不必须太多花哨的东西,就用widget再说。如果不是是做网易云这类比较好看、轻巧舒适的软件,就用qml。要多超酷有多超级酷炫。
qstringstrui-gttablewidget-gtitem(row,column)-gttext()//接过字符串
intnum()//转成int
ui-gttablewidget-gtitem(row,column)-gtsettext(qstring(
在qtablewidget表格中不显示一个qcheckbox:
一:反应最快想到的是voidqtablewidget::setcellwidget(introw,intcolumn,qwidget*widget),在我看来不使用这个函数都正常显示checkbox没有问题,不过却不能是从qtablewidget对象去加载这个checkbox的状态。情况如下:
1.从qtablewidget提出item的指针的函数只有:qtableitem*item(introw,intcolumn)const。再注意这个函数回的是qtableitem*,而不是你所去设置的对象类型。就得强制数据类型转换。
2.(qcheckbox*)...事实证明qt是不意见这种转换的。尽量:(qtablewidgetitem*)可噬灵鬼斩转换的为(qlabel*)。
并且在表格中如果没有想做出单选框的状态,不要用qcheckbox嵌入里面,这样的话会直接出现许多未知的bug。