PDA

Visualizza la versione completa : [C++][WINAPI]Centrare la finestra


Lardoman
11-04-2004, 17:52
Salve :D

Sapete dirmi che parametri devo modificare nell API CreateWindowEx per far si che la finestra venga centrata?

Per capirci:




hwnd =
CreateWindowEx
(WS_EX_STATICEDGE,
ClassName,"Titolo",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,CW_USEDEFAULT,
600,400,
NULL,NULL,
ghInstance,NULL) ;



La finestra mi appare in alto a sinistra a causa dei due parametri CW_USEDEFAULT.

Ora come vi ho detto la vorrei centrata. Certo, potrei mettere le cordinate in pixel solo che così cambiando risoluzione nn verrebbe + centrata!!

C'è quindi un modo per centrarla con qualsiasi risoluzione????

Lardoman
11-04-2004, 17:52

Lardoman
11-04-2004, 22:52
Ho risolto da solo :metallica

Per chi interesi:




hwnd =
CreateWindowEx
(WS_EX_STATICEDGE,
ClassName,"Titolo",
WS_OVERLAPPEDWINDOW,

(GetSystemMetrics(SM_CXFULLSCREEN)-600)/2,
(GetSystemMetrics(SM_CYFULLSCREEN)-400)/2,

CW_USEDEFAULT,
600,400,
NULL,NULL,
ghInstance,NULL) ;

Frank1962
12-04-2004, 14:24
bella grazie ;)

ps: cmq è assurdo il c++ come linguaggio!! :eek: :dhò:

Lardoman
12-04-2004, 14:36
Originariamente inviato da Frank1962

ps: cmq è assurdo il c++ come linguaggio!! :eek: :dhò:

:confused: E perchè ?

Frank1962
12-04-2004, 14:43
Originariamente inviato da Lardoman
:confused: E perchè ?


import javax.swing.*;


public class myFrame {

static JFrame frame;

public static void main(String[] args) {

frame = new JFrame("w Java");

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOS E);
frame.setSize(300,150);
frame.setLocation(700,700);
frame.show();
}


}

...con 11 righe di codice ti ho creato una frame e con altri 2 metodi ti ho settato le coordinate sullo schermo e le dimensioni!

vuoi mettere? :gren:


ps: e questo funziona non solo su windows .... ;)

Lardoman
12-04-2004, 14:46
Va beh,java nn si può paragonare al C++..sono 2 linguaggi completamente diversi

Poi ognuno ha le sue preferenze, io prediligo C++ anche se è + complesso :ciauz:

Frank1962
12-04-2004, 14:48
Originariamente inviato da Lardoman
Va beh,java nn si può paragonare al C++..sono 2 linguaggi completamente diversi

Poi ognuno ha le sue preferenze, io prediligo C++ anche se è + complesso :ciauz:
il C/C++ non è complesso (alla fine se vai a vedere somiglia molto al Java) .....sono le chiamate alle librerie di windows (per esempio per fare una semplice finestra) che sono da trauma!! :dhò:

Lardoman
12-04-2004, 14:55
Intendevo proprio quello con "complesso".

Però questo fa si che si abbia un controllo totale sulla window class. Così che puoi settare praticamente tutto. Dall'icona ,al cursore del mause,etc..

Frank1962
12-04-2004, 14:59
Originariamente inviato da Lardoman
Intendevo proprio quello con "complesso".

Però questo fa si che si abbia un controllo totale sulla window class. Così che puoi settare praticamente tutto. Dall'icona ,al cursore del mause,etc..
vabbe che, + o -, questo lo si può fare anche in java ...però il problema è la documentazione: con java la doc. e tutta ordinata e liberamente scaricabile mentre con il c++ e tutta un'altra storia.... una sorta di via crucis (tanto per rimanere in tema pasquale) :(

Loading