-
Data: 2012-02-29 09:24:27
Temat: Re: Qt: Szerokość splittera
Od: Przemysław Adam Śmiejek <n...@s...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu 29.02.2012 09:45, Tomasz D pisze:
> W dniu środa, 29 lutego 2012, 08:31:28 UTC+1 użytkownik Przemysław Adam Śmiejek
napisał:
>> Witam,
>>
>> zachciało mi się ostatnio pouczyć trochę Qt. I tak na początek
>> chciałem sobie zrobić w oknie dwa elementy oddzielone splitterem do
>> przesuwania ich szerokości. Zrobiłem to tak:
>>
>>
>> QSplitter *splitterPoziomy = new QSplitter(widget);
>> splitterPoziomy->addWidget( etykieta1 );
>> splitterPoziomy->addWidget( etykieta2 );
>> splitterPoziomy->setOrientation(Qt::Vertical);
>>
>> i wszystko działa, tylko szerokość tych elementów na starcie jest
>> JakaśTam. A chciałbym określić osobiście, że część 1 ma być np. 200px, a
>> część 2 pozostałą szerokość. Czy ktoś mógłby mi podpowiedzieć, jak to
>> zrobić? Nie umiem się dopatrzeć żadnej właściwości QSplittera, która by
>> to regulowała.
>>
>
> Jedna opcja to taka, żeby ograniczyć maksymalny rozmiar jednego z widgetów i
ustawić mu size policy.
Ale nie chcę ograniczać rozmiaru, tylko chcę, żeby na starcie było np.
100px | reszta
a jak user zechce sobie rozciągać na więcej, to OK. Chodzi o to, żeby
ustawić na starcie położenie splittera (docelowo będzie wczytywane jako
konfiguracja). Tak jak w Thunderbirdzie np. po lewej drzewko wąskie, po
prawej wiadomości szerokie. I drzewko da się splitterem powiększać, ale
po uruchomieniu ma wąskie i już.
> Ewentualnie możesz proporcjonalnie podzielić sekcje splittera:
> sp->setStretchFactor(0, 1);
> sp->setStretchFactor(1, 5);
> Po tym wywołaniu proporcje lewego do prawego będą 1:5
Hm... Wpisałem i dla pionowego zero różnicy. Nadal mam podział pół na pół.
A dla poziomego to w ogóle zniknęła mi gdzieś dolna część. Pełny kod mam
taki:
personFinder = new QLineEdit;
QVBoxLayout *personLayout = new QVBoxLayout;
personLayout->addWidget(personFinder);
personLayout->addWidget(editText2);
QWidget *widgetLeft = new QWidget;
widgetLeft->setLayout( personLayout );
// splitery
QSplitter *splitterPoziomy = new QSplitter(widget);
splitterPoziomy->addWidget( etykieta1 );
splitterPoziomy->addWidget( etykieta2 );
splitterPoziomy->setOrientation(Qt::Vertical);
splitterPoziomy->setStretchFactor(0, 1);
splitterPoziomy->setStretchFactor(1, 5);
QSplitter *splitterPionowy = new QSplitter(widget);
splitterPionowy->addWidget( widgetLeft );
splitterPionowy->addWidget( splitterPoziomy );
Ma z tego powstać aplikacja o wyglądzie takim: po lewej wąska lista
osób, nad tą listą edytorek do wyszukiwania osób. Po kliknięciu na osobę
pojawia się po prawej lista zdarzeń dla tej osoby (coś ala lista mejli w
thunderbirdzie), a po kliknięciu na zdarzenie, pod spodem treść opisu
zdarzenia.
--
Przemysław Adam Śmiejek
Niech żadne nieprzyzwoite słowo nie wychodzi z ust waszych,
ale tylko dobre, które może budować, gdy zajdzie potrzeba,
aby przyniosło błogosławieństwo tym, którzy go słuchają. (Ef 4,29)
Następne wpisy z tego wątku
- 29.02.12 09:36 Tomasz D
- 29.02.12 09:54 Przemysław Adam Śmiejek
- 29.02.12 11:10 GAD Zombie
- 29.02.12 11:39 Przemysław Adam Śmiejek
- 01.03.12 00:29 PawelS
- 01.03.12 07:15 szyk
- 01.03.12 16:47 PawelS
- 02.03.12 10:51 Przemysław Adam Śmiejek
Najnowsze wątki z tej grupy
- "Wuj dobra rada" z KDAB rozważa: Choosing the Right Programming Language for Your Embedded Linux Device
- Nowa ustawa o ochronie praw autorskich - opis problemu i szkic ustawy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
Najnowsze wątki
- 2025-03-29 Warszawa => Specjalista rekrutacji IT <=
- 2025-03-28 A gdyby to był elektryk?
- 2025-03-28 Współczesny falomierz
- 2025-03-28 Rzeszów => WEBCON Developer <=
- 2025-03-28 Szczecin => Specjalista ds. public relations <=
- 2025-03-28 Warszawa => Staż w dziale Sprzedaży B2B <=
- 2025-03-28 Warszawa => MENA New Business Manager <=
- 2025-03-28 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-03-28 Białystok => Generative AI Engineer <=
- 2025-03-28 China-Kraków => Key Account Manager IT <=
- 2025-03-28 Warszawa => SQL Developer <=
- 2025-03-28 Gliwice => Ekspert IT (obszar systemów sieciowych) <=
- 2025-03-28 Gliwice => IT Expert (Network Systems area) <=
- 2025-03-28 Warszawa => International Freight Forwarder <=
- 2025-03-28 Ostrów Wielkopolski => Konsultant Wdrożeniowy Comarch XL/Optima (Ksi