5

Sto sviluppando un'applicazione qt5 sul mio raspberry pi su raspbian utilizzando cross compilation.Raspberry Pi Qt5 Impostare le dimensioni dello schermo fisico

Quando lo eseguo, ottengo uno schermo nero che prova a visualizzare un Pop-up che è un QFrame.

suppongo che non può essere posizionato perché ho messaggi di errore che arrivano all'inizio:

EGLFS: Impossibile interrogare dimensione fisica dello schermo, inadempiente a 100 dpi.

EGLFS: per eseguire l'override, impostare QT_QPA_EGLFS_PHYSICAL_WIDTH e QT_QPA_EGLFS_PHYSICAL_HEIGHT (in millimetri).

EGLFS: Impossibile interrogare profondità dello schermo, inadempiente a 32.

EGLFS: Per ignorare, impostare QT_QPA_EGLFS_DEPTH.

Quando disattivo QFrame, l'applicazione viene avviata a schermo intero per impostazione predefinita, mentre io non l'ho impostata.

ho cercato di impostare queste variabili di ambiente con:

int main(int argc, char *argv[]) 
{ 
    QByteArray width = qgetenv("QT_QPA_EGLFS_PHYSICAL_WIDTH"); 
    width.setNum(1920); 

    QByteArray height = qgetenv("QT_QPA_EGLFS_PHYSICAL_HEIGHT"); 
    height.setNum(1080); 

    QApplication a(argc, argv); 

    MainWindow w; 
    w.show(); 
    w.launchGame(); 

    return a.exec(); 
} 

Ma i messaggi di errore vengono ancora visualizzati.

La finestra principale è un QWidget e ho definito la sua dimensione utilizzando:

setFixedSize(1280, 720); 

La mia domanda è, come impostare queste variabili correttamente o avete un'altra soluzione?

risposta

1

ho appena messo qualcosa come

export QT_QPA_EGLFS_PHYSICAL_WIDTH=myWidth 
     QT_QPA_EGLFS_PHYSICAL_HEIGHT=myHeight 
     QT_QPA_EGLFS_DEPTH=myDepth 

nel mio .bashrc per sbarazzarsi di questi errori. Anche la larghezza fisica e l'altezza sono espresse in millimetri, non pixel, e la profondità dello schermo è la profondità del colore del display (18 nel mio caso).