-
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
- 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?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
Najnowsze wątki
- 2025-01-04 Zbieranie danych przez www
- 2025-01-04 reverse engineering i dodawanie elementów do istniejących zamkniętych produktów- legalne?
- 2025-01-04 w Nowym Roku 2025r
- 2025-01-04 Warszawa => Specjalista ds. IT - II Linia Wsparcia <=
- 2025-01-04 Warszawa => Java Developer <=
- 2025-01-04 Warszawa => Spedytor Międzynarodowy <=
- 2025-01-04 Warszawa => System Architect (Java background) <=
- 2025-01-04 Wrocław => Application Security Engineer <=
- 2025-01-04 Chrzanów => Specjalista ds. public relations <=
- 2025-01-04 Katowice => Key Account Manager (ERP) <=
- 2025-01-03 Problem z odczytem karty CF
- 2025-01-03 Jazda z Warszawy do Krakowa teslą
- 2025-01-03 Wrocław => Konsultant Wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-01-03 Warszawa => International Freight Forwarder <=
- 2025-01-03 Mińsk Mazowiecki => Area Sales Manager OZE <=