I have a mainwindow and more than two widget on mainwindow. I wanna draw lines on the whole mainwindow and when the line should be over the widgets not behind these widgets. I've tried overwrite paintevent function of mainwindow and draw a line directly but the line is behind widgets. What should I do?
            Asked
            
        
        
            Active
            
        
            Viewed 3,868 times
        
    4
            
            
        - 
                    You need to draw (continue) the line on the widgets too. – vahancho Mar 18 '16 at 13:36
 - 
                    @vahancho But paintevent function of my widgets have been used, how could I draw lines on the widgets? – Asuka Mar 18 '16 at 13:38
 - 
                    In the same way: override the paint event for **each** widget. You said, that you override paint event function of the main window only. – vahancho Mar 18 '16 at 14:08
 - 
                    Well, if I've overridden paint event function of some widgets, what could I do? – Asuka Mar 18 '16 at 14:10
 - 
                    I don't understand your need exactly, but it's so easy to make a GUI with line or polygon, path, circle, etc. with Qt Graphics View framework ! Have you an example image with your need ? – Mohamed Hamzaoui Mar 18 '16 at 22:22
 
1 Answers
4
            You need to have an overlay widget, i.e. a widget that covers the area of your main widget, but is above it. Then you implement paintEvent() in that overlay widget. See this question for more details.
        Thomas McGuire
        
- 5,308
 - 26
 - 45