Você está aqui: C# ::: Windows Forms ::: Formulários e Janelas |
Como retornar a altura e largura da área cliente de um formulário Windows FormsQuantidade de visualizações: 9384 vezes |
A área cliente de um formulário Windows Forms é a área disponível excluindo as bordas e a barra de títulos, ou seja, o espaço disponível para a disposição dos controles. E é esta área que nos interessa quando estamos desenhando ou adicionando controles no formulário dinamicamente. Há duas formas de se obter a altura e a largura da área cliente de um formulário. A primeira que mostrarei é usando a propriedade ClientSize. Esta propriedade retorna um objeto da estrutura Size. Esta estrutura contém os membros Height (altura) e Width (largura). Veja um trecho de código no qual usamos a propriedade ClientSize para obter o tamanho da área cliente do formulário. Note a comparação com a área total do formulário: private void button1_Click(object sender, EventArgs e){ // vamos obter o tamanho da área cliente do formulário Size tamAreaCliente = this.ClientSize; // vamos obter o tamanho de todo o formulário, incluindo as bordas // e a barra de títulos Size tamForm = this.Size; // vamos mostrar o resultado MessageBox.Show("Área cliente: Altura = " + tamAreaCliente.Height + " - Largura = " + tamAreaCliente.Width); MessageBox.Show("Área total: Altura = " + tamForm.Height + " - Largura = " + tamForm.Width); } A segunda forma de se obter a área cliente de um formulário é usando a propriedade ClientRectangle. Esta propriedade retorna um objeto da estrutura Rectangle (que possui vários membros, entre eles Height (altura) e Width (largura)). Veja o trecho de código abaixo: private void button1_Click(object sender, EventArgs e){ // vamos obter o tamanho da área cliente do formulário Rectangle tamAreaCliente = this.ClientRectangle; // vamos obter o tamanho de todo o formulário, incluindo as bordas // e a barra de títulos Size tamForm = this.Size; // vamos mostrar o resultado MessageBox.Show("Área cliente: Altura = " + tamAreaCliente.Height + " - Largura = " + tamAreaCliente.Width); MessageBox.Show("Área total: Altura = " + tamForm.Height + " - Largura = " + tamForm.Width); } É possível também alterar a altura e largura da área cliente de um formulário em tempo de execução. Veja: private void button1_Click(object sender, EventArgs e){ // vamos definir a altura e largura da área cliente this.ClientSize = new Size(300, 350); } |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |