Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Qt] Wyświetlanie różnych formularzy w jednym, wybranym obszarze.

Ostatnio zmodyfikowano 2015-05-24 00:23
Autor Wiadomość
Floo
Temat założony przez niniejszego użytkownika
[Qt] Wyświetlanie różnych formularzy w jednym, wybranym obszarze.
» 2015-05-23 00:32:35
Dzień dobry!

Korzystam z Qt Creator i zaznaczam, że znam go zaledwie od kilku dni...
w tym od dwóch dni stoję w miejscu, ponieważ nie potrafię znaleźć sposobu na zrealizowanie tego, co zamierzam.

Przypuśćmy, że mam 5 buttonów i tuż obok obszar, w którym chciałabym, aby pojawiały się odmienne formularze w zależności od klikniętego buttonu. Stąd pytania:
- czym musi być ten obszar, aby mógł wyświetlać formularz? (np. frame)
- jak sprawić, żeby formularz wyświetlił się w tymże obszarze?

Zaznaczam: nie chcę otwierać nowego okna.
Chcę w aktualnym oknie, w wybranym obszarze, wyświetlić nowy formularz.
 
Bardzo proszę o pomoc, wskazówkę, link, albo cokolwiek, co mogłoby mnie przynajmniej nakierować, jak to zrobić.
Brak tej jednej umiejętności skutecznie blokuje mój projekt.

Jeżeli podałam za mało informacji dotyczących tego, co chcę osiągnąć, to proszę zwrócić mi uwagę, postaram się zrobić to lepiej.
P-132644
Maciek
» 2015-05-23 19:57:18
Możesz wyjasnić, co w tym przypadku rozumiesz pod pojęciem formularz ? Ma to byc na przykład jakieś pole tekstowe etc. ?? Jeśli ma to być widget rozumiany w tym przypadku jako formularz, to wystarczy ustawić na oknie (MainWindow) layout (na przykład grid) i podmieniać widget (formularz) w zależności od klikniętego przycisku który też będzie umieszczony w danym layoucie. To tak teoretycznie bo nie wiem czy zrozumiałem do końca o co chodzi. Nie będzie to na pewno trudne. Pozdrawiam.
P-132671
Floo
Temat założony przez niniejszego użytkownika
[Qt] Wyświetlanie różnych formularzy w jednym, wybranym obszarze.
» 2015-05-24 00:23:05
Jako formularz rozumiem QWidget stworzony w osobnym pliku .ui.
Trudno powiedzieć, z jakich elementów będzie się składał, ponieważ takich plików będzie kilka i każdy będzie odpowiadał za inną funkcjonalność. Każdy taki plik będzie więc mixem comboboxów, pól tekstowych, buttonów, checklist etc.

Wygląd mojego głównego okna jest zawarty w mainwindow.ui. Mam tam dwa buttony po prawej (powiedzmy, że tylko dwa, żeby nie mieszać bardziej niż jest) i dużo pustej przestrzeni po lewej. Chciałabym, aby:
- po kliknięciu pierwszego buttonu w przestrzeni po lewej wyświetliła się zawartość jednego z plików .ui (QWidget),
- po kliknięciu drugiego buttonu w przestrzeni po lewej wyświetliła się zawartość drugiego pliku .ui (QWidget) dokładnie w miejsce tego pierwszego.

1. Czy dobrze rozumiem, że formularz ma być klasy QWidget?
2. Jakiego typu musi być "obszar po lewej", w którym będą wyświetlały się moje formularze?
Myślę, że zapewne w coś / czymś trzeba to opakować...
3. No i ostatnia rzecz, w jaki sposób wyświetlać całe moje formularze (QWidget'y) w tym właśnie obszarze?
W sposób, o jakim wspomniałeś post wyżej?

Aż głupio pytać o takie, zapewne proste rzeczy, ale... podobno kto pyta, nie błądzi : >
Nigdzie nie potrafię wyszperać przykładu realizującego to, co chcę zrobić (albo z przejęcia nie potrafię dostrzec), dlatego tym bardziej, serdecznie dziękuję za chęć pomocy.

I pozdrawiam! :)
P-132681
« 1 »
  Strona 1 z 1