【问题标题】:How can I draw a selection rectangle on the screen with Qt?如何使用 Qt 在屏幕上绘制选择矩形?
【发布时间】:2010-09-22 13:33:23
【问题描述】:

如何在 X11 中使用 Qt 在我的屏幕上绘制一个选择矩形? 我希望能够在我的屏幕上(应用程序之外)拖动一个矩形,然后保存整个矩形。

提前致谢。

【问题讨论】:

    标签: c++ linux qt x11


    【解决方案1】:

    部分解决方案将涉及使用QPixmapgrabWindow() 函数,如下所示:

    QPixmap::grabWindow(QApplication::desktop()->winId());
    

    Qt 有一个example program for this here

    解决方案的其余部分,即绘制要抓取的区域,可能可以通过使用全屏透明窗口来渲染鼠标绘制的矩形,然后从抓取的桌面图像中获取其轮廓的部分或使用全屏来实现窗口,上面绘制了整个抓取的屏幕。

    【讨论】:

    • 嗯,是的,我知道。这是我最初的方法。由于我正在编写一个屏幕截图实用程序,你认为它初始化和截取全尺寸屏幕截图所需的时间会很明显吗?
    • 我认为它与任何其他屏幕截图实用程序一样响应迅速。构建和测试示例程序将是一个快速的实验。
    • 是的,好吧,我会接受你的回答。谢谢。
    猜你喜欢
    • 2013-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多