当前位置:  技术问答>linux和unix

QT关于滚动条的问题,大家一定要看啊,帮帮我啊!

    来源: 互联网  发布时间:2015-10-19

    本文导语:  我在Qt中写了一个类,用于显示一个Jpeg图像,要求用滚动条,我也做出来了,不过刷新太慢,我用鼠标拖动滚动条时,反应很迟钝,过一会儿才刷新过来,而且屏幕老在闪,请大家给我指点一下,我现在想找问题都不...

我在Qt中写了一个类,用于显示一个Jpeg图像,要求用滚动条,我也做出来了,不过刷新太慢,我用鼠标拖动滚动条时,反应很迟钝,过一会儿才刷新过来,而且屏幕老在闪,请大家给我指点一下,我现在想找问题都不知道从哪下手!我的类如下所示:
--------------------------------
这是imageView.h文件
------------------------------
#include 
#include 

class QPainter;
class QPaintEvent;

class CImageView : public QScrollView
{
    Q_OBJECT
 public:

     CImageView(QWidget* parent, const char* name = 0);
     void  setImage(const QImage &newimage);
 protected:
     void drawContents(QPainter *painter, int x, int y, int width, int height);
 public slots:
     void paintEvent(QPaintEvent *);
 private:
     void resizeContents();
 QImage *image;
};
----------------------------------------
这是imageView.cpp文件
---------------------------------------
#include 
#include 
#include 
#include 
#include "imageView.h"

CImageView::CImageView(QWidget* parent, const char *name)
    : QScrollView(parent, name, WStaticContents)
{
    image = new QImage();
}

void CImageView::setImage(const QImage &newimage)
{
    *image = newimage;
    resizeContents();
    updateContents();
}

void CImageView::resizeContents()
{
    QSize size = image->size();
    QScrollView::resizeContents(size.width(), size.height());
}

void CImageView::drawContents(QPainter* painter, int , int , int, int)
{
    QSize size = image->size();
    painter->drawImage(QRect(0,0,size.width(), size.height()), *image);
}

void CImageView::paintEvent(QPaintEvent *)
{

}
----------------------------------------------------------------------
下面是的调用
-------------------------------------
CImageView *imageView
imageView = new CImageView(this);
imageView->setGeometry(QRect(20,20,180,180));
imageView->setImage(*image)//image指向一个文件
QPainter p;
p.begin(imageView);
p.end();

请大家一定要帮帮我啊,我真的很着急的!

|
拖动时,有一部分图像是不用重画的,内存传送过去就行了,只画原来未显示的那些

    
 
 

您可能感兴趣的文章:

  • 关于绘图的滚动问题
  • Java有关JScrollPane和JTable的使用时横滚动条的问题请教
  • 如果解决jTable中滚动条拖动后花屏的问题》?
  • GTK 滚动条问题?
  • 请问Applet滚动窗口的问题,着急!!!
  • JBuiler6的问题:拖动编辑区右侧的滚动条时,代码重叠的乱七八糟,这是怎么回事啊?:(
  • 解决ASP.NET回传后div滚动条位置复位的问题(利用隐藏控件原理)
  • 关于JPanel滚动的问题
  • shell问题,如何将一个目录中的带序号的所有a_xxx.tar.gz文件的序号向前滚动?
  • 较简单,但搞不定的一个问题:关于滚动条。几行代码,烦请相助!
  • 用div+css解决出现水平滚动条问题
  • panel与scrollpanel的滚动简单问题,80分,请进-->!!!!!!!!!!!!!!!!!!
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • andriod中UIScrollView无法正常滚动的解决方法
  • 如何获得JScrollPane的滚动条的滚动单击等事件?
  • 在线提问,怎么捕获ScrollPane中滚动条滚动的事件?
  • android开发之横向滚动/竖向滚动的ListView(固定列头)
  • 通过JQuery将DIV的滚动条滚动到指定的位置方便自动定位
  • 怎么样去除浏览器中的滚动条,而采用内部的滚动条!
  • 如何使得TextArea的竖向滚动条,随着TextArea中添加的条目,自动向下滚动,以自动显示最后一行
  • GTK编程,如何设置及获取鼠标滚动条滚动事件
  • jQuery判断div随滚动条滚动到一定位置后停止
  • sqlserver iis7站长之家
  • jscrollpanel中放置了jtable,请问如何在程序中能够控制滚动条的位置,比如先setselectioninterval到下一屏的某一行中,然后滚动条也滚到相应位置?
  • 请问怎样使滚动条随JTextArea内容增加向下滚动????????
  • jQuery 列表自动循环滚动鼠标悬停时停止滚动的实现代码(图文)
  • jQuery滚动插件 jQuery Totem
  • jQuery垂直新闻滚动插件 vTicker
  • Jquery原生态实现表格header头随滚动条滚动而滚动
  • jQuery滚动延迟效果插件 AnimateScroll
  • jQuery自动滚动插件 AutoScroll.js
  • jQuery 滚动插件 Scroll Magic
  • jQuery 滚动插件 Any List Scroller
  • 怎样用script实现某段html随滚动条滚动的效果?最好能给源代码?或者给出能看到源代码的链接也可以


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3