Você está aqui: Qt ::: Classes, Controles e Componentes ::: QMainWindow |
Como retornar ou definir as dimensões de uma janela QMainWindow usando size() e resizeQuantidade de visualizações: 6925 vezes |
|
Em algumas situações precisamos obter ou definir as dimensões de uma janela QMainWindow. Para obter as dimensões da janela, ou seja, sua largura e altura, podemos usar o método size(). Este método retorna um objeto da classe QSize, que por sua vez possui os métodos width(), que retorna a largura da janela, e height(), que retorna a altura da janela. Veja um trecho de código no qual obtemos tanto a largura quanto a altura de uma janela QMainWindow: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
void JanelaPrincipal::on_pushButton_clicked()
{
// vamos obter um objeto QSize representando as dimensões internas
// da janela
QSize dimensoes = this->size();
// vamos obter a largura da janela
int largura = dimensoes.width();
// vamos obter a altura da janela
int altura = dimensoes.height();
// vamos exibir o resultado
QMessageBox::information(this, tr("Mensagem"),
tr("Largura: %1; Altura: %2").arg(largura).arg(altura));
}
É claro que o código acima (detalhado para fins de melhor entendimento) pode ser simplificado. Veja: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
void JanelaPrincipal::on_pushButton_clicked()
{
// vamos obter a largura da janela
int largura = this->size().width();
// vamos obter a altura da janela
int altura = this->size().height();
// vamos exibir o resultado
QMessageBox::information(this, tr("Mensagem"),
tr("Largura: %1; Altura: %2").arg(largura).arg(altura));
}
Note que as dimensões retornadas pelo método size() se referem às dimensões internas da janela, ou seja, excluindo as bordas e a barra de títulos. A largura e altura da janela podem ser definidas por meio do método resize(). Este método possui duas assinaturas: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- void resize(const QSize&) void resize(int w, int h) Veja que na primeira versão nós passamos um objeto da classe QSize, enquanto na segunda versão nós fornecemos os valores inteiros referentes à largura e altura da janela. Veja um exemplo usando a sobrecarga que usa um objeto QSize: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
void JanelaPrincipal::on_pushButton_clicked()
{
// vamos definir a largura e altura da janela
// primeiro criamos um objeto da classe QSize
QSize tamanho(200, 150);
// agora definimos as dimensões internas da janela
this->resize(tamanho);
}
Veja agora o mesmo efeito passando apenas valores inteiros para o método resize(): ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
void JanelaPrincipal::on_pushButton_clicked()
{
// vamos definir a largura e altura da janela
this->resize(200, 150);
}
|
|
|
Veja mais Dicas e truques de Qt |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





