• 3764阅读
  • 0回复

[提问]菜鸟对访问QridLayout的一点了解 [复制链接]

上一主题 下一主题
离线54hqh
 
只看楼主 倒序阅读 楼主  发表于: 2012-10-05
— 本帖被 XChinux 从 Qt图形编程 移动到本区(2012-10-08) —
关键词: widgetQGridLayout

作为QT菜鸟,每天都在摸索啊,前天有点发现,赶紧记录下来:
前几天在用QGridLayout的时候,想对其内的部件进行访问,发现总是转型出错
后来才发现转型错误的地方。
       先说一下正确的做法。
     QGridLayout*grid=new QGridLayout;
    ...........//加入部件
     QLayoutItem*itm=grid->itemAtPosition(i,j);//对(i,j)位置的窗口部件进行访问
      QPushButton*bt=dynamic_cast<QPushButton*>(itm->widget());//我这儿用加入的QPushButton
这样就可以 对内部的窗口部件进行访问了。
可能一般初学者都可以想到itemAtPosition(i,j)的方法,然后直接转型:
如:QPushButton*bt=dynamic_cast<QPushButton*>(itm)
这当然是错的。结果肯定是bt为空
快速回复
限100 字节
 
上一个 下一个