源码下载地址:https://files.cnblogs.com/files/blogs/782609/untitled1.rar?t=1729500154&download=true
下面有三张图,想把图一的折线图缩小放到图二的右边空位上(放在tabWidget上)。已设好ui .加了句ui->chartContainer->layout()->addWidget(chartView); 就运行出错,如图三。注释此句就能运行。求助高手怎样才能把图一折线图放到图二右边空位上且图二窗体要最大化的。谢谢!
你这个问题我这边能复现,是layout()返回null.下面这个代码可以
QVBoxLayout* layout= new QVBoxLayout(ui->chartContainer);
layout->addWidget(chartView);
问题应该在这里
你没给widget设置布局,要先拖个控件进去,设置好布局后再把控件删了.这个红色的圆圈没了就可以了
代码上传的有问题
我在这里加了个widget
代码里加上
效果
为什么我学你这样却不行?
能否把你改了的代码传给我,谢谢
@tea2007: 是你的UI里不存在这个chartContainer所以才出问题吧.你加上试试
@www378660084: 你的也没加,我跟你的一样。代码里也把chartContainer 的行注释了
@www378660084: 如果加我应该加在哪。chartContainer不也是widget 控件改了名称罢了。
@tea2007: 我不是这个回答本人.. 你的UI文件左上角有星号,没保存...
@www378660084: 星号在哪,看不到,麻烦截图一下发上来,谢谢
@tea2007: ..等我下个qt看看..qt没有调试模式么,你下个断点跑下看看啥情况.
@www378660084:
好像是编译器问题,这句话不支持msvc2017 64位?但我原程序只能跑msvc2017 64位 。其他很容易错。
请问你用的是什么编译器,我用msvc2017 64位 通不过
@tea2007: 这个是空指针错误. 访问内存地址0x8.你先看看是哪个变量是NULL