Results 1 to 20 of 26

Thread: Undefined Reference error!!!

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Join Date
    Feb 2006
    Location
    New Delhi,India
    Posts
    226
    Qt products
    Qt4
    Platforms
    Windows
    Thanks
    14
    Thanked 4 Times in 4 Posts

    Default Re: Undefined Reference error!!!

    hi,

    i have re-implemented the mouseMoveEvent(QMouseEvent *event), mousePressEvent(QMouseEvent *event), mouseReleaseEvent(QMouseEvent *event)
    and am just trying to pop-up a message box whenever the mouse moves over the widget but there is no response.. i went thru quite a few docs and also examples and all have done something similar to what i have done but there is still no response...

    why is it so????

    thanking you,
    Kapil

  2. #2
    Join Date
    Jan 2006
    Location
    Ukraine,Lviv
    Posts
    454
    Qt products
    Qt3
    Platforms
    Unix/X11 Windows
    Thanks
    9
    Thanked 27 Times in 27 Posts

    Default Re: Undefined Reference error!!!

    Have you declare this events handler in protected section ?
    a life without programming is like an empty bottle

  3. #3
    Join Date
    Feb 2006
    Location
    New Delhi,India
    Posts
    226
    Qt products
    Qt4
    Platforms
    Windows
    Thanks
    14
    Thanked 4 Times in 4 Posts

    Default Re: Undefined Reference error!!!

    Quote Originally Posted by zlatko
    Have you declare this events handler in protected section ?
    yes,

    they are declared in the protected section...

  4. #4
    Join Date
    Jan 2006
    Location
    Ukraine,Lviv
    Posts
    454
    Qt products
    Qt3
    Platforms
    Unix/X11 Windows
    Thanks
    9
    Thanked 27 Times in 27 Posts

    Default Re: Undefined Reference error!!!

    So if i have undestand you we talk about ImageZoomer class?
    Who is his parent?
    a life without programming is like an empty bottle

  5. #5
    Join Date
    Feb 2006
    Location
    New Delhi,India
    Posts
    226
    Qt products
    Qt4
    Platforms
    Windows
    Thanks
    14
    Thanked 4 Times in 4 Posts

    Default Re: Undefined Reference error!!!

    Quote Originally Posted by zlatko
    So if i have undestand you we talk about ImageZoomer class?
    Who is his parent?
    This class inherits the QMainWindow class and the header file for the class is :
    ImageZoomer.h
    Qt Code:
    1. class ImageZoomer : public QMainWindow
    2. {
    3. Q_OBJECT
    4.  
    5. public:
    6. ImageZoomer(Ui::MainWindow *_mw);
    7. ~ImageZoomer();
    8. void scaleImage(double factor);
    9. void adjustScrollBar(QScrollBar *sbar, double factor);
    10.  
    11. protected:
    12. void contentsMousePressEvent(QMouseEvent*);
    13.  
    14. public slots:
    15.  
    16. void open();
    17. void zoomIn();
    18. void zoomOut();
    19. void zoomNormal();
    20. void fitToWindow();
    21.  
    22. private:
    23.  
    24. QFrame *frame;
    25. QScrollArea *sarea;
    26. Q3ScrollView *sview;
    27. double scalefactor;
    28. Ui_MainWindow *mwin;
    29. QPixmap fromImage;
    30. Q3Canvas *canvas;
    31. Q3CanvasView *canview;
    32. QMouseEvent *mEvent;
    33. Q3CanvasItem* moving;
    34. QPoint moving_start;
    35. QImage image;
    36. };
    To copy to clipboard, switch view to plain text mode 

  6. #6
    Join Date
    Jan 2006
    Location
    Ukraine,Lviv
    Posts
    454
    Qt products
    Qt3
    Platforms
    Unix/X11 Windows
    Thanks
    9
    Thanked 27 Times in 27 Posts

    Default Re: Undefined Reference error!!!

    QMainWindow doesnt have slot void contentsMousePressEvent(QMouseEvent*);
    a life without programming is like an empty bottle

  7. #7
    Join Date
    Feb 2006
    Location
    New Delhi,India
    Posts
    226
    Qt products
    Qt4
    Platforms
    Windows
    Thanks
    14
    Thanked 4 Times in 4 Posts

    Default Re: Undefined Reference error!!!

    Quote Originally Posted by zlatko
    QMainWindow doesnt have slot void contentsMousePressEvent(QMouseEvent*);
    Hi,

    Okay.. This means that i will have to also inherit the class QCanvasView 'coz it contains the method contentsMousePressEvents(QMouseEvent *)...

    Is it so?????

  8. #8
    Join Date
    Mar 2006
    Posts
    10
    Qt products
    Qt3
    Platforms
    Unix/X11

    Default Re: Undefined Reference error!!!

    no, you just dont capture mouse events on a main window.

    If you want to capture them in your canvas, make a class that extends QCanvas and override its mouse events.

  9. #9
    Join Date
    Feb 2006
    Location
    New Delhi,India
    Posts
    226
    Qt products
    Qt4
    Platforms
    Windows
    Thanks
    14
    Thanked 4 Times in 4 Posts

    Default Re: Undefined Reference error!!!

    Quote Originally Posted by incubator
    no, you just dont capture mouse events on a main window.

    If you want to capture them in your canvas, make a class that extends QCanvas and override its mouse events.
    Hi,

    It means that i would make another class and its structure would look like this..
    [HTML]
    #include "imagezoomer.h"
    class Sample : public QCanvas
    {
    public:
    Sample();
    protected:
    void contentsMousePressEvent(QMouseEvent *);
    private:
    ImageZoomer *zoom;
    };
    Sample::Sample()
    {
    ImageZoomer zoom = new ImageZoomer;
    }
    void Sample::contentsMousePressEvent(QMouseEvent *event)
    {
    code
    }
    [/HTML]

    Is it so??????????????

  10. #10
    Join Date
    Mar 2006
    Posts
    10
    Qt products
    Qt3
    Platforms
    Unix/X11

    Default Re: Undefined Reference error!!!

    sort of, but your ImageZoomer extends a main window, so that class should have a private member MyCanvas that extends a QCanvas (if you use Qt4 its Q3Canvas I think)

    and in that MyCanvas class you override your mouse events.

  11. #11
    Join Date
    Feb 2006
    Location
    New Delhi,India
    Posts
    226
    Qt products
    Qt4
    Platforms
    Windows
    Thanks
    14
    Thanked 4 Times in 4 Posts

    Default Re: Undefined Reference error!!!

    Hi...

    The new class which i have created is CanvasMouse..

    Now in my ImageZoomer i have created a CanvasMouse *canmouse variable which would call the CanvasMouse which inherits the Q3CanvasView....

    In imageZoomer i have created a Q3CanvasView and have passed in the constructor of the CanvasMouse which reads this
    CanvasMouse(Q3CanvasView *canview): canvasview(canview)

    Now class CanvasMouse contains all the canvas related functionalities...

    is this approach correct ?????

  12. #12
    Join Date
    Jan 2006
    Location
    Ukraine,Lviv
    Posts
    454
    Qt products
    Qt3
    Platforms
    Unix/X11 Windows
    Thanks
    9
    Thanked 27 Times in 27 Posts

    Default Re: Undefined Reference error!!!

    Quote Originally Posted by Kapil
    In imageZoomer i have created a Q3CanvasView and have passed in the constructor of the CanvasMouse which reads this
    CanvasMouse(Q3CanvasView *canview): canvasview(canview)
    You sholdn't give Q3CanvasView parametr. You need give only pointer on parent class.

    Qt Code:
    1. CanvasMouse *canmous = new CanvasMouse(this);
    2.  
    3. *****
    4. CanvasMouse(ImageZoomer*p): canvasview(p)
    5. {
    6. }
    To copy to clipboard, switch view to plain text mode 


    p.s. also you could give any parametres (if you dont need it in future )
    a life without programming is like an empty bottle

Similar Threads

  1. how to add static library into qmake
    By Namrata in forum Qt Tools
    Replies: 1
    Last Post: 20th November 2007, 17:33
  2. MS Sql native driver??
    By LordQt in forum Qt Programming
    Replies: 4
    Last Post: 9th October 2007, 13:41
  3. error undefined reference ...............
    By amit_pansuria in forum Qt Programming
    Replies: 2
    Last Post: 8th June 2007, 14:28
  4. how to correctly compile threads support?
    By srhlefty in forum Installation and Deployment
    Replies: 9
    Last Post: 25th June 2006, 19:15
  5. Strange error while using Q3Canvas
    By Kapil in forum Newbie
    Replies: 13
    Last Post: 15th June 2006, 19:36

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Qt is a trademark of The Qt Company.