QWdiget in QApplication erstellen, möglichst klein

Verschiedenes zu Qt
Antworten
Nash
Beiträge: 118
Registriert: 27. April 2007 14:49

QWdiget in QApplication erstellen, möglichst klein

Beitrag von Nash »

Hi Ho,
ich habe eine Klasse QApplication als einstiegspunkt für mein QtApp.
und in diesem erstelle ich mit ein Widget, zum initialisieren meiner Anwendung.

diese Widget sollte unsichtbar sein und so klein wie möglich 1x1 pixel.

Code: Alles auswählen

m_InvisibleRenderWidget = new QWidget;
	if(!m_InvisibleRenderWidget)
	{
		LOGD("Could not create invisble RenderWidget!");
		return;
	}
	
	m_InvisibleRenderWidget->setVisible(false);
	m_InvisibleRenderWidget->setFixedSize(1,1);
nun ist es so das dieses Fenster leider aus welchen gründen auch immer 104x1 pixel groß ist, obwohl ich die größe auf 1,1 festgelegt habe.

kann mir jemand sagen warum, und wie man das lösen könnte?
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Den Sinn eines 1x1-Pixel großen Widgets, noch dazu auf dem Desktop muß man nicht wirklich verstehen, oder?

Wahrscheinlich hast du sämtliche Deko-Elemente noch eingeschaltet, schalte diese mal aus. (WindowFlags)
Nash
Beiträge: 118
Registriert: 27. April 2007 14:49

Beitrag von Nash »

m_InvisibleRenderWidget = new QWidget(0, Qt::WindowTitleHint | Qt::WindowSystemMenuHint | Qt::FramelessWindowHint);

damit komme ich aber immer noch auf ein Widget mit 49 Pixeln größe
QRect t = m_InvisibleRenderWidget->geometry();
t = {x1=0 y1=0 x2=49 y2=0}
Nash
Beiträge: 118
Registriert: 27. April 2007 14:49

Beitrag von Nash »

ich brauch einfach ein Window Hanlde zum initialisieen der 3D engine.
MichaelV
Beiträge: 5
Registriert: 27. September 2007 11:58

unsichtbar

Beitrag von MichaelV »

Hi,

schieb es doch einfach aus dem sichtbaren bereich.

Michael
Burgpflanze
Beiträge: 89
Registriert: 24. Februar 2006 16:41
Wohnort: Dresden

Beitrag von Burgpflanze »

Solange du nicht

Code: Alles auswählen

show()
ausführst, wird dein Widget sowieso nicht angezeigt, also kannst du dir

Code: Alles auswählen

setVisible(false)
eigentlich sparen, genau wie

Code: Alles auswählen

setFixedSize(1,1)
,da die Größe eines unsichtbaren Widgets eigentlich egal sein kann.
Gruß, Peter
Antworten