And here is the code that I want....

Qt Code:
  1. #include "setrasteroptest.h"
  2. #include <QMouseEvent>
  3. #include <QPainter>
  4.  
  5. //Program to draw a straight line using Qt4
  6. //constructor
  7. setRasterOpTest::setRasterOpTest(QWidget *parent, Qt::WFlags flags)
  8. : QFrame(parent, flags)
  9. {
  10. ui.setupUi(this);
  11. QColor color( Qt::white );
  12. QPalette palette;
  13. palette.setColor(backgroundRole(), color);
  14. setPalette(palette);
  15. setMouseTracking(true);
  16. m_bflag = false;
  17. }
  18.  
  19. setRasterOpTest::~setRasterOpTest()
  20. {}
  21.  
  22. void setRasterOpTest::mousePressEvent( QMouseEvent *e ){
  23. if (e->button() == Qt::LeftButton){
  24. m_firstpt = e->pos();
  25. m_lastpt = e->pos();
  26. }
  27. }
  28.  
  29. void setRasterOpTest::mouseMoveEvent( QMouseEvent *e ){
  30. if ((e->buttons() & Qt::LeftButton) ){
  31. m_lastpt = e->pos();
  32. m_bflag = true;
  33. update();
  34. }
  35. }
  36.  
  37. void setRasterOpTest::mouseReleaseEvent(QMouseEvent *e){
  38. if (e->button() == Qt::LeftButton ) {
  39. m_lastpt = e->pos();
  40. m_vectorLine << QLine( m_firstpt, m_lastpt );
  41. update();
  42. }
  43. }
  44.  
  45. void setRasterOpTest::paintEvent(QPaintEvent *e){
  46. QPainter painter(this);
  47. painter.setPen( Qt::black );
  48. painter.drawLines( m_vectorLine );
  49.  
  50. if( m_bflag ){
  51. painter.drawLine( m_firstpt, m_lastpt );
  52. m_bflag = false;
  53. }
  54. }
To copy to clipboard, switch view to plain text mode 

Thanks wysota!!!!