Wpis z mikrobloga

via Wykop Mobilny (Android)
  • 0
Jak sprawić żeby po kliknięciu w menuitem otwierało się nowe okno? Znalazłem sporo poradników, ale wszystkie tyczą się buttonów, a ja chciałbym żeby menuitem otwierał nowe okno.

Używam PyQT

#python
  • 5
@magucio: musisz utworzyć nową metodę w której otworzysz nowe okno i podpiąć sygnał z tą metodą używając connect(, ). Sygnał podpinasz przy inicjalizacji aktualnego okna które ma to menu.

Jeśli dobrze pamiętam, jakoś tak to było (w PyQt pisałem ze 4-5 lat temu, więc może być ciut inaczej, ale powinieneś załapać czego szukać):

connect('triggered()', twojaFunkcjaKtoraOtworzyOkno)
moar info: https://www.tutorialspoint.com/pyqt/pyqt_signals_and_slots.htm

via Wykop Mobilny (Android)
  • 0
@morsik: nie do końca to rozumiem.

Jak dam cos takiego:

def systeminf(self):
print("hsjtjehrhk")

A następnie dodam

def connectActions(self):
self.systeminfAction.triggered.connect(self.systeminf)

I do def init(self, parent=None):
self.
createActions()

To wyrzuca mi błąd, ze obiekt Window nie ma astrybutu connectActions. Gdzie wiec popełniłem błąd?

Systeminf to element menu

ze obiekt Window nie ma astrybutu connectActions





> def init(self, parent=None):
> self._createActions()
>

</blockquote>


@magucio: hmm? Weź ten kod wrzuć na jakiegoś normalnego pastebin bo nie sklei się to co tu napisałeś ( ͡° ͜ʖ ͡°)
@morsik w realpython masz fajnie to rozpisane, jeden z darmowych tutoriali. Ja u siebie robiłem nowy widget (nowa klasa, która zostawała central widgetem po kliknięciu), zamiast central widget możesz właśnie odpalić nowe okno