def addNewFigure(self): print('addB') filepath=QtWidgets.QFileDialog.getOpenFileName(self,"Data Load")[0] if not filepath.strip() : return # creat new display window self.cP.hide() self.page.append( displayWindow(self) ) self.cP=self.page[-1] self.cP.id=len(self.page)-1 self.cP.move( 0.214*self.width(), 0.214*self.height() ) self.cP.hide() print('cp',self.cP.geometry()) # fig plot databox=data_format(filepath) sc = FigurePlot(self.cP, width=5, height=4, dpi=100) sc.data_load(databox)#[[1,2],[2,3],[3,4]]) sc.plot_plot() sc.resize(self.cP.width()/2,self.cP.height()/2) sc.move(self.cP.width()/2-sc.width()/2,self.cP.height()/2-sc.height()/2) print('sc',sc.geometry()) #self.cP.layout.addWidget(sc) # fig label set figl=WindowLabel(self, os.path.basename(filepath)) figl.id=len(self.page)-1 self.labelbox.append(figl) self.cL=self.labelbox[-1] if len(self.labelbox) == 1 : self.cL.move(0.214*self.width(), 0.214*self.height()-self.height()/60 ) else : self.cL.move(0.214*self.width()+0.1*self.width()*len(self.labelbox), 0.214*self.height()-self.height()/60) self.cL.resize(100,30) print('windlabel',self.cL.geometry(),self.cL.linelabel.geometry(),self.cL.ltextlabel.geometry()) # addBotton move self.addB.resize( self.cL.height(), self.cL.height() ) self.addB.move( self.cL.x()+self.cL.width()+5, self.cL.y() )