Szukałem online bezskutecznie. Czy ktoś wie, jak uzyskać dostęp do przycisku w oknie przycisku (utworzony przy użyciu szablonu "Okno z przyciskami z prawej")?Jak zmienić właściwości przycisków w polach przycisków w Qt Designer?
Odpowiedz
W Projektancie wybierz przycisk OK
lub Cancel
. Następnie otwórz edytor właściwości i przewiń w dół do sekcji QDialogButtonBox
. Następnie można rozwinąć element standardButtons
, aby wyświetlić dostępne przyciski. Dostępne są również inne właściwości, takie jak właściwość centerButtons
.
Jednak projektant daje bardzo mało kontroli nad polem przycisku.
W kodzie można wykonać wiele innych czynności, takich jak zmiana tekstu wyświetlanego na "standardowych przyciskach". Od documentation:
findButton = new QPushButton(tr("&Find"));
findButton->setDefault(true);
moreButton = new QPushButton(tr("&More"));
moreButton->setCheckable(true);
moreButton->setAutoDefault(false);
buttonBox = new QDialogButtonBox(Qt::Vertical);
buttonBox->addButton(findButton, QDialogButtonBox::ActionRole);
buttonBox->addButton(moreButton, QDialogButtonBox::ActionRole);
tak długo, jak dać przycisk pudełko nazwę w projektanta, można ustawić te właściwości w kodzie.
Piszę tę odpowiedź dla społeczności Python. Używam PySide i borykałem się z podobnym problemem. Mam QDialogButtonBox i chciałbym mieć własne przyciski zamiast domyślnych.
Używam PySide, która jest mniej więcej dokładną repliką kodu C++, więc wierzę, że inni programiści C++ mogą również coś z niej uzyskać.
Oto w jaki sposób to zrobić:
my_ok_button = QtGui.QPushButton("My Ok Button")
my_cancel_button = QtGui.QPushButton("My Cancel Button")
ok_cancel_button = QtGui.QDialogButtonBox(QtCore.Qt.Horizontal)
ok_cancel_button.addButton(my_ok_button, QtGui.QDialogButtonBox.ButtonRole.AcceptRole)
ok_cancel_button.addButton(my_cancel_button, QtGui.QDialogButtonBox.ButtonRole.RejectRole)
Chciałbym następnie wstawić mój przycisk okno do mojego układu jak ususal:
layout.addWidget(ok_cancel_button, 1, 1)
Teraz później w moim kodu mogę nic zrobić z moim przycisku . Pozwala zmienić jego nazwę:
my_ok_button.setText("Some Other Name")
Więc rzeczy do odnotowania jest to, że:
należy ustawić rolę przycisków w addButton() metodę, jeśli chcesz korzystać z funkcji podanych za pomocą standardowych przycisków. Na przykład. jeśli chcesz wykonać coś takiego jak poniżej, musisz mieć ustawiony zestaw przycisków ról .
ok_cancel_button.accepted.connect (self.ok_method_handler) ok_cancel_button.rejected.connect (self.close)
- 1. jak zmienić domyślny tekst przycisków w JOptionPane.showInputDialog
- 2. Przypisywanie klawiszy skrótów do przycisków - Qt C++
- 3. wiele przycisków w formularzu
- 4. Jak zmienić kolejność przycisków paska narzędzi w Eclipse 4.2?
- 5. Wyłączony splitter w qt designer
- 6. Jak dodać ikony przycisków interfejsu jQuery UI do przycisków wejściowych?
- 7. iPhone - Obraz w tle przycisków
- 8. Jak sprawdzić obraz przycisków w Xcode
- 9. Tworzenie przycisków wyglądających jak zakładki w Androidzie
- 10. Jak utworzyć samosadującą siatkę przycisków w tkinter?
- 11. Jak korzystać z przycisków radiowych w React?
- 12. Jak tworzyć elementy przycisków w ClojureScript?
- 13. Jak zmienić kolor tekstów i obrazów przycisków MFMailComposeViewController?
- 14. Jak zmienić bibliotekę obsługi projektu Android Kolor paska przycisków FAB?
- 15. Automatyczne programowanie przycisków RadioButons
- 16. Jak śledzić kliknięcia przycisków Tweetowania?
- 17. Usunąć Dock Widget w Qt Designer?
- 18. tworzenie klikalnych "przycisków" C++
- 19. Tworzenie dwóch przycisków niestandardowych
- 20. Czy ktoś zaimplementował przyrosty przycisków przycisków jQuery Mobile Add (+/-)?
- 21. Przycisk wyboru tła przycisków
- 22. Przycisk tła paska przycisków
- 23. Wyrównywanie przycisków wewnątrz TableRow
- 24. CakePHP tworzenie przycisków radiowych
- 25. Grupowanie przycisków przełącznika Silverlight
- 26. Jak usunąć pasek przycisków na dole ekranu
- 27. Wiele przycisków przesyłania
- 28. Jak dodać akcję do przycisków w Alertu w Swift
- 29. grupowanie przycisków asp.net
- 30. zapobiega jednoczesnemu naciskaniu przycisków
Zgaduję kod do formularza jest generowany i przechowywane w jakimś pliku, więc mogę przejść do tego pliku i zmienić właściwości przycisku, które muszę? –
Nie edytuj wygenerowanego pliku. Istnieją różne sposoby pracy z wygenerowanym kodem udokumentowanym na stronie [Tworzenie i używanie komponentów dla projektanta Qt] (http://doc.trolltech.com/4.6/qtdesigner-components.html). –
@KalebPederson Jeśli dołączę przycisk OK/Anuluj, nie można kliknąć przycisków wewnętrznych. –