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: 9175 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: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- 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: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- 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: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void button1_Click(object sender, EventArgs e){ // vamos definir a altura e largura da área cliente this.ClientSize = new Size(300, 350); } |
Link para compartilhar na Internet ou com seus amigos: |
PHP ::: Fundamentos da Linguagem ::: Tipos de Dados |
Apostila PHP - Como usar o tipo de dados string do PHPQuantidade de visualizações: 10257 vezes |
Strings são cadeias de caracteres, ou seja, palavras, frases e trechos de texto são considerados strings e usadas em praticamente todos os tipos de aplicações. Em PHP, literais strings podem ser criados usandos aspas simples ou duplas. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- $nome = 'Osmar J. Silva'; $cidade = "Goiânia"; Variáveis são expandidas (avaliadas) dentro de aspas duplas. Dentro de aspas simples isso não acontece: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- $nome = "Osmar J. Silva"; echo "Olá, $nome\n"; echo 'Olá, $nome'; O resultado da execução deste código será: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- Olá, Osmar J. Silva Olá, $nome Aspas duplas suportam uma boa quantidade de strings de escape, como listado abaixo: Símbolo Significado ------------------------------------------------------ \" Aspas duplas \n Nova linha (Newline) \r Retorno de linha (Carriege return) \t Tab (tabulação) \\ Barra invertida (Backslash) \$ Símbolo de Dollar \{ Chave esquerda \} Chave direita \[ Colchete esquerdo \] Colchete direito \0 à \777 Caractere ASCII representado por um valor octal \x0 à \xFF Caractere ASCII representado por um valor hexadecimal Strings dentro de aspas simples reconhecem \\ para obter uma barra invertida e \' para obter uma aspas simples: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- $caminho = 'C:\\WINDOWS\\SYSTEM'; $frase = 'Shes\'s here!'; Para testar se duas strings são iguais, o operador de comparação == pode ser usado: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- if($a == $b){ echo "As duas strings são iguais." } Se quisermos saber se uma determinada variável é do tipo string, podemos usar a função is_string(). Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- <? $nome = 'Osmar J. Silva'; if(is_string($nome)){ echo 'A variável $nome é do tipo string'; } ?> |
Python ::: Desafios e Lista de Exercícios Resolvidos ::: NumPy Python Library |
Exercício Resolvido de Python NumPy - Como somar duas matrizes usando a biblioteca NumPy do PythonQuantidade de visualizações: 680 vezes |
Pergunta/Tarefa: Escreva um programa Python que usa a biblioteca NumPy para efetuar a soma de duas matrizes de mesma ordem, ou seja, mesmo número de linhas e colunas. Seu código deverá somar o primeiro elemento da matriz A com o primeiro elemento da matriz B, e assim por diante. Sua saída deverá ser parecida com: A primeira matriz é: [[4 1 3] [9 2 5]] A segunda matriz é: [[ 3 10 2] [ 1 13 4]] A matriz soma é: [[ 7 11 5] [10 15 9]] Veja a resolução comentada deste exercício em Python: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- # vamos importar a biblioteca NumPy import numpy as np # função principal do programa def main(): # vamos criar a primeira matriz a = np.array([[4, 1, 3], [9, 2, 5]]) # vamos criar a segunda matriz b = np.array([[3, 10, 2], [1, 13, 4]]) # vamos somar as duas matrizes c = a + b # e agora mostramos o resultado print("A primeira matriz é:\n{0}".format(a)) print("A segunda matriz é:\n{0}".format(b)) print("A matriz soma é:\n{0}".format(c)) if __name__== "__main__": main() |
Rust ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se uma string é um valor numérico em Rust usando a função is_numeric()Quantidade de visualizações: 421 vezes |
Nesta dica mostrarei como podemos verificar se uma string possui um valor numérico válido, ou seja, é composta apenas pelos dígitos de 0 a 9. Note que criei uma função validar_string_numerica() que recebe a string e retorna um valor bool, indicando se a string é um valor númerico válido ou não. Note também o uso do método is_numeric() do tipo char para testar os caracteres individuais da string. Veja o código Rust completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // função principal do programa Rust fn main() { // vamos declarar uma string let numero = "3a2221"; // vamos testar se a string é numérica if validar_string_numerica(numero.to_string()){ println!("A string {} é numérica", numero); } else{ println!("A string {} não é numérica", numero); } } // função quer permite verificar se uma string // possui um valor numérico válido fn validar_string_numerica(str: String) -> bool { // vamos varrer os caracteres da string for c in str.chars() { // o caractere atual não é numérico? if !c.is_numeric() { return false; } } // se chegou até aqui, a string é numérica return true; } |
MySQL ::: Dicas & Truques ::: Data e Hora |
Como adicionar dias a uma data usando a função ADDDATE() do MySQLQuantidade de visualizações: 15610 vezes |
A função ADDDATE() é usada para adicionar dias a uma data. Veja um exemplo de seu uso:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- SELECT ADDDATE(vencimento, 30) FROM tabela_estudos Aqui o valor do campo vencimento será acrescido de 30 dias. É possível também fornecer um número negativo de dias. Neste caso a data será decrementada pelo número de dias fornecidos. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- SELECT ADDDATE(vencimento, -5) FROM tabela_estudos Se quiser, você pode ainda usar esta função para adicionar não somente dias, mas também meses, anos, semanas, etc. Veja um exemplo no qual adicionamos três meses a uma determinada data: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- SELECT ADDDATE(vencimento, INTERVAL 3 MONTH) FROM tabela_estudos |
C ::: Dicas & Truques ::: Struct (Estruturas, Registros) |
Como alocar memória para instâncias de uma estrutura (struct) e acessá-las usando ponteiros em CQuantidade de visualizações: 11188 vezes |
Esta dica mostra como declarar uma estrutura (struct), alocar duas instâncias desta e acessá-las usando ponteiros. Considere a seguinte struct: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // define a estrutura Livro struct Livro{ char titulo[80]; int codigo; int paginas; }; Note que agora a variável titulo foi declarada como uma matriz de caracteres de 80 posições. Mais adiante você entenderá o propósito de tal abordagem. Veja agora como alocamos memória para duas instâncias desta estrutura: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- // cria dois ponteiros para duas instâncias (recém-alocadas) // de Livro Livro *a = (struct Livro*)malloc(sizeof(struct Livro)); Livro *b = (struct Livro*)malloc(sizeof(struct Livro)); A partir deste ponto as variáveis a e b são ponteiros para as duas instâncias recém alocadas. Observe que, quando usamos ponteiros para estruturas, seus membros são acessados usando-se a notação -> em vez do ponto. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- a->codigo = 342; a->paginas = 230; Para definir o valor para o membro titulo é preciso lançar mão da função strcpy(). Isso é feito porque estamos lidando com ponteiros, e cada instância de Livro possui sua área de memória a partir da qual a posição inicial da cadeia de caracteres que receberá o título do livro já foi inicializada. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- strcpy(a->titulo, "Programando em Java"); Observe agora o código completo para o exemplo: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <string.h> // define a estrutura Livro struct Livro{ char titulo[80]; int codigo; int paginas; }; int main(int argc, char *argv[]){ // cria dois ponteiros para duas instâncias (recém-alocadas) // de Livro Livro *a = (struct Livro*)malloc(sizeof(struct Livro)); Livro *b = (struct Livro*)malloc(sizeof(struct Livro)); // preenche os dados do primeiro Livro // Estamos usando ponteiros agora. Para definir o título // do livro é preciso usar a função strcpy, já que estamos // usando uma cadeia de caracteres strcpy(a->titulo, "Programando em Java"); a->codigo = 342; a->paginas = 230; // preenche os dados do segundo Livro strcpy(b->titulo, "JavaScript - O Guia Prático"); b->codigo = 675; b->paginas = 930; // exibe os dados do primeiro livro printf("Primeiro Livro\nTitulo: %s\nCodigo: %d\nPaginas: %d\n", a->titulo, a->codigo, a->paginas); // exibe os dados do segundo livro printf("\nSegundo Livro\nTitulo: %s\nCodigo: %d\nPaginas: %d\n", b->titulo, b->codigo, b->paginas); puts("\n\n"); system("PAUSE"); return 0; } |
Desafios, Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
JavaScript - Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em JavaScript |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |