abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 18:11 | IT novinky

    Apple představil 13palcový MacBook Neo s čipem A18 Pro. V základní konfiguraci za 16 990 Kč.

    Ladislav Hagara | Komentářů: 3
    dnes 12:22 | Komunita

    Kalifornský zákon AB 1043 platný od 1. ledna 2027 vyžaduje, aby operační systémy požadovaly po uživatelích věk nebo datum narození a skrze API poskytovaly aplikacím informaci, zda je uživatel mladší 13 let, má 13 až 16 let, má 16 až 18 let nebo má alespoň 18 let. Vývojáři linuxových distribucí řeší, co s tím (Ubuntu, Fedora, …).

    Ladislav Hagara | Komentářů: 44
    dnes 11:44 | Pozvánky

    Konference LinuxDays 2026 proběhne o víkendu 3. a 4. října v Praze v areálu ČVUT v Dejvicích na FIT. Čekají vás desítky přednášek, workshopy, stánky a setkání se spoustou chytrých lidí.

    Petr Krčmář | Komentářů: 0
    dnes 00:44 | Humor

    Nové verze webových prohlížečů Chrome a Firefox jsou vydávány každé 4 týdny. Aktuální verze Chrome je 145. Aktuální verze Firefoxu je 148. Od září přejde Chrome na dvoutýdenní cyklus vydávání. V kterém týdnu bude mít Chrome větší číslo verze než Firefox? 😀

    Ladislav Hagara | Komentářů: 1
    včera 21:55 | IT novinky Ladislav Hagara | Komentářů: 4
    včera 13:44 | Komunita

    Bylo spuštěno hlasování o přednáškách a workshopech pro letošní Installfest, jenž proběhne o víkendu 28. a 29. března v Praze na Karlově náměstí 13.

    Ladislav Hagara | Komentářů: 2
    včera 04:33 | Nová verze

    Byla vydána (Mastodon, 𝕏) třetí RC verze GIMPu 3.2. Přehled novinek v oznámení o vydání. Podrobně v souboru NEWS na GitLabu.

    Ladislav Hagara | Komentářů: 0
    2.3. 21:44 | IT novinky

    Apple představil iPhone 17e a iPad Air s čipem M4.

    Ladislav Hagara | Komentářů: 17
    2.3. 21:11 | Zajímavý software

    Byla vydána verze 1.0 editoru kódů Gram. Jedná se o fork editoru Zed bez telemetrie a umělé inteligence.

    Ladislav Hagara | Komentářů: 0
    2.3. 20:33 | IT novinky

    Byla oznámena spolupráce GrapheneOS s Motorolou. Podrobnosti v tiskové zprávě. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (17%)
     (6%)
     (0%)
     (11%)
     (28%)
     (2%)
     (5%)
     (1%)
     (13%)
     (25%)
    Celkem 1008 hlasů
     Komentářů: 25, poslední 3.2. 19:50
    Rozcestník

    Dotaz: QT - vkladani vlastniho widgetu

    7.12.2005 14:20 Elsik
    QT - vkladani vlastniho widgetu
    Přečteno: 282×
    Ahoj udelal sem si hlavni okno MainWindows v nem sem si udelal LayoutGrid a ted to neho postupne vkladam predmety, udelel asem si vlastni widget ale kdyz ho tam pomoci addWidget pridam tak ta se tam sice prida ale protoze nakonci tam davam jeste spacer aby se mi to zarovnalo nahoru tak se ten muj widget uplne smrti na 0 pixelu. Nevite proc? Nevite jak nastavit jeho nejakou velikost aby to ten spacer nemohl takhle zmensit? Dekuji.

    Odpovědi

    7.12.2005 16:25 s0 | skóre: 32 | blog: nejchytřejší kecy | prágl
    Rozbalit Rozbalit vše Re: QT - vkladani vlastniho widgetu
    jestlize je to potomek QWidgetu, tak tam muzes pouzit nsatevni velikosti pres setMinimumXXXX(), setGeometry() nebo pres "size hinty":

    http://doc.trolltech.com/3.3/qwidget.html
    Kuolema Kaikille (Paitsi Meille).
    7.12.2005 17:21 Elsik
    Rozbalit Rozbalit vše Re: QT - vkladani vlastniho widgetu
    Dekuji, uz vim jak na to. Ale nastal dalsi problem potrebuju se z toho widgetu dostat nejakym pointrem na hlavni okno kde bude vlozen. V tom widgetu mohl nastavit uz nejaky connecty treba. Jde to nejak? Mozna ze je to blbost se odkazovat na neco co jeste neexistuje ale docela by mi to usnadnilo praci:] Any idea?:]
    7.12.2005 19:42 shamot
    Rozbalit Rozbalit vše Re: QT - vkladani vlastniho widgetu
    pointer na hlavni okno: a] qApp->mainWidget(); kde qApp je globalni poiner na instanci QApplication (ta promenna qApp vzdycky existuje, nemusi se definovat) b] kazdemu widgetu se v konstruktoru predava odkaz na rodicovsky widget (parent), tak toho by se dalo vyuzit

    connecty: Pokud potrebujes neco propojit s MainWindow, nejlepe zavolat connect() na urovni tridy QMainWindow, treba v jejim konstruktoru. Stejne ostatni pod-widgety konstruujes z nejake funkce QMainWindow (napr z konstruktoru).
    7.12.2005 20:10 Elsik
    Rozbalit Rozbalit vše Re: QT - vkladani vlastniho widgetu
    Pravda to me nenapadlo:] dekuju pouziju. Necekane mam dalsi dotaz. Proc se mi ted widget nezobrazi po kliknuti na tlacitko Adapters v ten ScrollArea. Nastavi se spravne ten scroll bar ale widget se nezobrazi. kdyz zavolam to addWidget az po vytvoreni "window" tak to jde. nechybi mi tam neco jako repaint nebo update? Dekuji
    #include 
    #include "window.h"
    #include "windowadapters.h"
    #include "adapters_compont.h"
    
    MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)
        {
    	window = NULL;
    	uii.setupUi(this);
    	
    	connect(uii.actionExit, SIGNAL(triggered()), this, SLOT(close()));
    	
    	//  -----------------------------------------------------------------------------
    
    	QPushButton * adapterButton = new QPushButton;
    	adapterButton->setText("Adapters");
    	uii.vboxLayout->addWidget(adapterButton);
    	connect(adapterButton, SIGNAL(clicked()), this, SLOT(ShowAdapters()));
    		
    	QPushButton * eraseButton = new QPushButton;
    	eraseButton->setText("Erase");
    	uii.vboxLayout->addWidget(eraseButton);
    	connect(eraseButton, SIGNAL(clicked()), this, SLOT(WindowErase()));
    	
    	QPushButton * exitButton = new QPushButton;
    	exitButton->setText("Exit");
    	uii.vboxLayout->addWidget(exitButton);
    	connect(exitButton, SIGNAL(clicked()), this, SLOT(close()));
    	
    	QSpacerItem * spacer1 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);
    	uii.vboxLayout->addItem(spacer1);
    	
    	scrollArea = new QScrollArea;
    	uii.vboxLayout1->addWidget(scrollArea);
    	
    	// ---------------------------------------------------------------------
    	
        }
    
    void MainWindow::ShowAdapters()
        {
    	if(window==NULL)
    	{
    	    window = new windowadapters;
                scrollArea->takeWidget();    
    	    scrollArea->setWidget(window);
                scrollArea->setWidgetResizable(window);
    	}
        }
    
    void MainWindow::WindowErase()
        {	
    	if(window!=NULL)
    	{	
    	    window->close();
                window=NULL;
    	}
    	
        }
    
    7.12.2005 20:30 shamot
    Rozbalit Rozbalit vše Re: QT - vkladani vlastniho widgetu
    a] tento radek je podezrely... proc je tam vboxLayout1, kdyz pred tim pouzivas vboxLayout uii.vboxLayout1->addWidget(scrollArea);

    b] nechtelo by to neco jako

    window->show();

    nebo

    uii.update();
    7.12.2005 20:36 Elsik
    Rozbalit Rozbalit vše Re: QT - vkladani vlastniho widgetu
    a] je to vertikalni layout prvni pro menu a druhy pro ten scrollarea b] to update jsem zkousel nepomohlo

    add] upravil sem to takhle ale prijde mi zbytecny to mazat, nesel by lepsi zpusob? po tom erase tam klidne ten scrollarea muze zustat jen aby se vypraznil a potom nahral zase dalsi widget (ted stejny ve vysledku jiny)
    #include QtGui>
    #include "window.h"
    #include "windowadapters.h"
    #include "adapters_compont.h"
    
    MainWindow::MainWindow(QWidget *parent): QMainWindow(parent)
        {
    	window = NULL;
    	uii.setupUi(this);
    	
    	connect(uii.actionExit, SIGNAL(triggered()), this, SLOT(close()));
    	
    	//  -----------------------------------------------------------------------------
    
    	QPushButton * adapterButton = new QPushButton;
    	adapterButton->setText("Adapters");
    	uii.vboxLayout->addWidget(adapterButton);
    	connect(adapterButton, SIGNAL(clicked()), this, SLOT(ShowAdapters()));
    		
    	QPushButton * eraseButton = new QPushButton;
    	eraseButton->setText("Erase");
    	uii.vboxLayout->addWidget(eraseButton);
    	connect(eraseButton, SIGNAL(clicked()), this, SLOT(WindowErase()));
    	
    	QPushButton * exitButton = new QPushButton;
    	exitButton->setText("Exit");
    	uii.vboxLayout->addWidget(exitButton);
    	connect(exitButton, SIGNAL(clicked()), this, SLOT(close()));
    	
    	QSpacerItem * spacer1 = new QSpacerItem(20, 40, QSizePolicy::Minimum, QSizePolicy::Expanding);
    	uii.vboxLayout->addItem(spacer1);
    	
    	// ---------------------------------------------------------------------
    	
        }
    
    void MainWindow::ShowAdapters()
        {
    	if(window==NULL)
    	{
    	    scrollArea = new QScrollArea;	
    	    window = new windowadapters;
     	    scrollArea->setWidget(window);
                scrollArea->setWidgetResizable(window);
    	    uii.vboxLayout1->addWidget(scrollArea);
    	}
        }
    
    void MainWindow::WindowErase()
        {	
    	if(window!=NULL)
    	{	
    	    window->close();
    	    window=NULL;
    	    delete scrollArea;	
    	}
        }
    
    

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.