DH樵夫 2023-07-26 11:41 采纳率: 0%
浏览 19

qt怎么在QGraphicsView的底部滑动条位置添加按钮

img


需要在画出的位置上添加几个按钮,方便预览和调整。
我一开使用水平布局,将按键和下拉条水平,在显示但是位置不正确,是需要自己计算位置
还是有方法直接添加到底部

QPushButton *button1 = new QPushButton();
QHBoxLayout *hLayout = new QHBoxLayout(this);
 //QPoint point = this->horizontalScrollBar()->pos();
 hLayout->addWidget(button1);
hLayout->addWidget(this->horizontalScrollBar());
hLayout->setGeometry(this->horizontalScrollBar()->geometry());
  • 写回答

4条回答 默认 最新

  • 藏柏 2023-07-26 12:54
    关注

    试试这个?

    
    // 创建QWidget用于放置按钮和滑动条
    QWidget* widget = new QWidget(this);
    QHBoxLayout* layout = new QHBoxLayout(widget);
    
    // 创建按钮
    QPushButton* button1 = new QPushButton("Button 1");
    QPushButton* button2 = new QPushButton("Button 2");
    
    // 将按钮添加到布局中
    layout->addWidget(button1);
    layout->addWidget(button2);
    
    // 获取QGraphicsView的水平滑动条
    QScrollBar* horizontalScrollBar = this->horizontalScrollBar();
    
    // 设置QWidget的大小和位置与滑动条相同,使其显示在底部滑动条的位置
    QRect rect = horizontalScrollBar->geometry();
    widget->setGeometry(rect);
    
    // 将QWidget设置为QGraphicsView的viewport,这样它就会显示在底部滑动条的位置
    this->setViewport(widget);
    
    
    评论

报告相同问题?

问题事件

  • 修改了问题 7月26日
  • 创建了问题 7月26日

悬赏问题

  • ¥15 报酬10000,做一个简单的换汇网站
  • ¥15 关于#vue.js#的问题:word excel和ppt预览问题语言-javascript)
  • ¥15 Apache显示系统错误3该如何解决?
  • ¥30 uniapp小程序苹果手机加载gif图片不显示动效?
  • ¥20 js怎么实现跨域问题
  • ¥15 C++dll二次开发,C#调用
  • ¥15 请教,如何使用C#加载本地摄像头进行逐帧推流
  • ¥15 Python easyocr无法顺利执行,如何解决?
  • ¥15 为什么会突然npm err!啊
  • ¥15 java服务连接es读取列表数据,服务连接本地es获取数据时的速度很快,但是换成远端的es就会非常慢,这是为什么呢