<div dir="ltr"><div>Rich,</div><div><br></div><div>Yes, just like we built one container for a single tab, we could have built multiple containers, each with its own layout and widgets, and added them all to QTabWidget.</div><div><br></div><div>BTW, even the title bar and frame can be removed from a QMainWindow if you use a window flag <code>Qt.FramelessWindowHint</code>, as shown below (I had to remove qwt because it was somehow interfering with the package for that):<br></div><div><br></div><div>#!/usr/bin/env python3<br><br>import sys<br><br>from PyQt5.QtCore import Qt<br>from PyQt5.QtWidgets import QMainWindow, QWidget, QGridLayout, QPushButton, QTabWidget, QApplication<br><br><br>class TestWindow(QMainWindow):<br>    def __init__(self):<br>        super().__init__()<br>        bio = QWidget(windowTitle='Test', width = 800, height = 600)<br><br>        # Layout<br>        container = QWidget(self)<br>        group1 = QGridLayout()<br>        container.setLayout(group1)<br><br>        savebutton = QPushButton('Save')<br>        savebutton.clicked.connect(self.save)<br>        group1.addWidget(savebutton, 0, 0)<br><br>        cancelbutton = QPushButton('Cancel')<br>        cancelbutton.clicked.connect(self.cancel)<br>        group1.addWidget(cancelbutton, 0, 1)<br><br>        tabwidget = QTabWidget(self)<br>        tabwidget.addTab(container, "My tab")<br><br>        self.setCentralWidget(tabwidget)<br><br>        self.setWindowFlags(Qt.FramelessWindowHint)<br><br>        self.show()<br><br>    # Methods<br>    def save(self):<br>        pass<br><br>    def cancel(self):<br>        pass<br><br><br>if __name__ == '__main__':<br>    app = QApplication(sys.argv)<br>    bio = TestWindow()<br>    sys.exit(app.exec())</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Apr 22, 2021 at 3:57 PM Rich Shepard <<a href="mailto:rshepard@appl-ecosys.com">rshepard@appl-ecosys.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Thu, 22 Apr 2021, Rodrigo de Salvo Braz wrote:<br>
<br>
> You can follow the same ideas for placing that layout with buttons in a<br>
> tab. You can just replace<br>
> self.setCentralWidget(container)<br>
> by<br>
> tabwidget = QTabWidget(self)<br>
> tabwidget.addTab(container, "My tab")<br>
> self.setCentralWidget(tabwidget)<br>
<br>
Rodrigo,<br>
<br>
If I understand correctly, I build the individual tabs in a QTabWidget<br>
rather than individually importing them into the main application window as<br>
tab/page content.<br>
<br>
> It's true that eventually you will have a QMainWindow, but that should be<br>
> ok, because your application will eventually need to use a window, right?<br>
> And of course a QMainWindow is not required to have a status bar or menu,<br>
> etc.<br>
<br>
Yes, the two button file is a minimum working example. There will be about 7<br>
tabs in the main application for data entry/modification.<br>
<br>
> Hope that helps.<br>
<br>
Yes, it does.<br>
<br>
I'm going to read Alan Moore's book (and finish Martin Fitzpatrick's book)<br>
before going back to coding. I'll still have questions but a much better<br>
understanding of the PyQt system.<br>
<br>
Stay well,<br>
<br>
Rich<br>
</blockquote></div>