Você está aqui: C# ::: Namespace System.Windows.Forms ::: KeyEventArgs |
Entenda e aprenda a usar a classe KeyEventArgs em suas aplicações C# Windows FormsQuantidade de visualizações: 2508 vezes |
A classe KeyEventArgs fornece dados para os eventos KeyDown e KeyUp, definidos originalmente na classe Control. Sempre que estes eventos ocorrem, um objeto KeyEventArgs é passado junto para que tenhamos mais informações sobre o evento. Veja um exemplo:---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void Form1_KeyDown(object sender, KeyEventArgs e){ // obtém a representação numérica do código da tecla pressionada int codigo = e.KeyValue; // mostra o resultado MessageBox.Show("O código da tecla pressionada é: " + codigo); } Neste trecho de código nós obtemos a representação numérica do código da tecla pressionada por meio da propriedade KeyValue da classe KeyEventArgs. Veja agora a posição da classe KeyEventArgs na hierarquia de classes da plataforma .NET: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- System.Object System.EventArgs System.Windows.Forms.KeyEventArgs Observe agora um trecho de código no qual testamos se o usuário pressionou a tecla Enter: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void Form1_KeyDown(object sender, KeyEventArgs e){ // vamos verificar se o usuário pressionou a tecla Enter if (e.KeyCode == Keys.Return) { MessageBox.Show("Você pressionou a tecla Enter"); } else { MessageBox.Show("Você não pressionou a tecla Enter"); } } Neste exemplo nós comparamos a propriedade KeyCode com o valor Return da enumeração Keys. O valor Return desta enumeração se refere à tecla Enter. |
Link para compartilhar na Internet ou com seus amigos: |
C# ::: Windows Forms ::: ListBox |
Como inserir um item em uma determinada posição da ListBox do C# Windows Forms usando o método Insert()Quantidade de visualizações: 653 vezes |
Em algumas situações nós gostaríamos de adicionar um novo item a uma ListBox do C# Windows Forms e indicar a posição (índice) na qual ela deverá ficar. Para isso podemos usar a função Insert() do objeto Items da ListBox. O método Insert() recebe o índice no qual o elemento será inserido e o item a ser inserido. Veja um exemplo de seu uso no trecho de código a seguir: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void button2_Click(object sender, EventArgs e) { // insere um item na terceira posição listBox1.Items.Insert(2, "Fortaleza"); } Se o índice fornecido para o método Insert() não estiver dentro da faixa de índices válidos para os elementos da ListBox, uma exceção do tipo ArgumentOutOfRangeException será atirada: System.ArgumentOutOfRangeException HResult=0x80131502 Message=InvalidArgument=Value '20' não é um valor válido para 'index'. Parameter name: index Source=System.Windows.Forms StackTrace: em System.Windows.Forms.ListBox.ObjectCollection.Insert(Int32 index, Object item) |
C# ::: Dicas & Truques ::: Programação Orientada a Objetos |
Como criar sua primeira classe em C# - Programação Orientada a Objetos em C#Quantidade de visualizações: 34651 vezes |
O estudo da programação orientada a objeto em C# passa obrigatoriamente pela criação de sua primeira classe. E esta não é uma tarefa fácil para os iniciantes. Esta dica o guiará passo-a-passo pelas caminhos iniciais. Esta dica assume que você já sabe criar uma aplicação console ou Windows Forms no Visual C# 2005 ou 2008. Sendo assim, crie uma nova aplicação console e vamos criar o esqueleto da classe. Em Visual C# 2005 ou 2008, a forma mais comum de adicionar uma classe ao seu projeto é clicando com o botão direito no namespace do projeto (o primeiro filho do solution explorer) e escolhendo a opção Add -> Class. Em seguida dê o nome "Pessoa.cs" para a classe e clique o botão Add. Imediatamente o código inicial para a classe será exibido, contendo o namespace e alguns using padrões. Agora faça sua classe Pessoa parecida com o código abaixo (não altere nada em relação ao namespace): ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- class Pessoa{ // varíáveis privadas para o nome // e idade da pessoa private string nome; private int idade; // método que permite definir o nome // da pessoa public void setNome(string nome){ this.nome = nome; } // método que permite definir a idade // da pessoa public void setIdade(int idade){ this.idade = idade; } // método que permite obter o nome // da pessoa public string getNome(){ return this.nome; } // método que permite obter a idade // da pessoa public int getIdade(){ return this.idade; } } Hora de testar a classe. Volte à classe principal da aplicação (aquela que contém o método Main) e faça as seguintes alterações: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ // Cria uma instância da classe Pessoa Pessoa p = new Pessoa(); // Define um nome e idade para a pessoa p.setNome("Osmar J. Silva"); p.setIdade(37); // Obtém o nome e idade da pessoa string nome = p.getNome(); int idade = p.getIdade(); Console.WriteLine("Nome: " + nome + " - Idade: " + idade); Console.WriteLine("\n\nPressione uma tecla para sair..."); Console.ReadKey(); } Funcionou? Agora tente refazer todo o processo, desta vez usando Windows Forms. |
C# ::: Dicas & Truques ::: Geometria, Trigonometria e Figuras Geométricas |
Como calcular o coeficiente angular de uma reta em C# dados dois pontos no plano cartesianoQuantidade de visualizações: 1326 vezes |
O Coeficiente Angular de uma reta é a variação, na vertical, ou seja, no eixo y, pela variação horizontal, no eixo x. Sim, isso mesmo. O coeficiente angular de uma reta tem tudo a ver com a derivada, que nada mais é que a taxa de variação de y em relação a x. Vamos começar analisando o seguinte gráfico, no qual temos dois pontos distintos no plano cartesiano: Veja que o segmento de reta AB passa pelos pontos A (x=3, y=6) e B (x=9, y=10). Dessa forma, a fórmula para obtenção do coeficiente angular m dessa reta é: \[\ \text{m} = \frac{y_2 - y_1}{x_2 - x_1} = \frac{\Delta y}{\Delta x} = tg \theta \] Note que __$\Delta y__$ e __$\Delta x__$ são as variações dos valores no eixo das abscissas e no eixo das ordenadas. No triângulo retângulo que desenhei acima, a variação __$\Delta y__$ se refere ao comprimento do cateto oposto e a variação __$\Delta y__$ se refere ao comprimento do cateto adjascente. Veja agora o trecho de código na linguagem C# que solicita as coordenadas x e y dos dois pontos, efetua o cálculo e mostra o coeficiente angular m da reta que passa pelos dois pontos: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- using System; using System.Collections; namespace Estudos { class Program { static void Main(string[] args) { // x e y do primeiro ponto Console.Write("Informe a coordenada x do primeiro ponto: "); double x1 = double.Parse(Console.ReadLine()); Console.Write("Informe a coordenada y do primeiro ponto: "); double y1 = double.Parse(Console.ReadLine()); // x e y do segundo ponto Console.Write("Informe a coordenada x do segundo ponto: "); double x2 = double.Parse(Console.ReadLine()); Console.Write("Informe a coordenada y do segundo ponto: "); double y2 = double.Parse(Console.ReadLine()); // agora vamos calcular o coeficiente angular double m = (y2 - y1) / (x2 - x1); // e mostramos o resultado Console.WriteLine("O coeficiente angular é: " + m); Console.WriteLine("\nPressione qualquer tecla para sair..."); // pausa o programa Console.ReadKey(); } } } Ao executar este código em linguagem C# nós teremos o seguinte resultado: O coeficiente angular é: 0,6666666666666666 Veja agora como podemos calcular o coeficiente angular da reta que passa pelos dois pontos usando o Teorema de Pitágoras. Note que agora nós estamos tirando proveito da tangente do ângulo Theta (__$\theta__$), também chamado de ângulo Alfa ou Alpha (__$\alpha__$): ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- using System; using System.Collections; namespace Estudos { class Program { static void Main(string[] args) { // x e y do primeiro ponto Console.Write("Informe a coordenada x do primeiro ponto: "); double x1 = double.Parse(Console.ReadLine()); Console.Write("Informe a coordenada y do primeiro ponto: "); double y1 = double.Parse(Console.ReadLine()); // x e y do segundo ponto Console.Write("Informe a coordenada x do segundo ponto: "); double x2 = double.Parse(Console.ReadLine()); Console.Write("Informe a coordenada y do segundo ponto: "); double y2 = double.Parse(Console.ReadLine()); // vamos obter o comprimento do cateto oposto double cateto_oposto = y2 - y1; // e agora o cateto adjascente double cateto_adjascente = x2 - x1; // vamos obter o ângulo tetha, ou seja, a inclinação da hipetunesa // (em radianos, não se esqueça) double tetha = Math.Atan2(cateto_oposto, cateto_adjascente); // e finalmente usamos a tangente desse ângulo para calcular // o coeficiente angular double tangente = Math.Tan(tetha); // e mostramos o resultado Console.WriteLine("O coeficiente angular é: " + tangente); Console.WriteLine("\nPressione qualquer tecla para sair..."); // pausa o programa Console.ReadKey(); } } } Ao executar este código você verá que o resultado é o mesmo. No entanto, fique atento às propriedades do coeficiente angular da reta: 1) O coeficiente angular é positivo quando a reta for crescente, ou seja, m > 0; 2) O coeficiente angular é negativo quando a reta for decrescente, ou seja, m < 0; 3) Se a reta estiver na horizontal, ou seja, paralela ao eixo x, seu coeficiente angular é zero (0). 4) Se a reta estiver na vertical, ou seja, paralela ao eixo y, o coeficiente angular não existe. |
Vamos testar seus conhecimentos em Fundações |
Fundações diretas ou rasas As fundações rasas ou diretas apresentam como características a transmissão da carga ao terreno, predominantemente pelas pressões distribuídas sob a base da fundação, e a profundidade de assentamento em relação ao terreno inferior a duas vezes a menor dimensão da fundação. Sobre as fundações superficiais rasas ou diretas, assinale a alternativa correta. A) A sapata associada pode ser definida como a sapata sujeita à ação de uma carga distribuída linearmente ou de pilares ao longo de um mesmo alinhamento. B) O radier é o elemento de fundação superficial que abrange parte ou todos os pilares de uma estrutura, distribuindo os carregamentos. C) A sapata corrida é definida como a sapata comum a mais de um pilar. Devido a essa particularidade, para sua execução é necessário o uso de máquinas. D) A sapata é dimensionada de modo que as tensões de tração nela resultantes sejam resistidas pelo concreto, sem necessidade de armadura. E) O bloco é dimensionado de modo que as tensões de tração nele resultantes sejam resistidas pelo emprego de armadura disposta para esse fim. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Ética e Legislação Profissional |
Ética Empresarial e Profissional: Noções Gerais A partir dos anos 80, a questão da ética começou a ganhar mais destaque e importância nas rotinas das empresas brasileiras. Indique a alternativa que contém os fatores que contribuem para essa mudança. A) O enxugamento dos cargos de comando; a competição interna pelos cargos mais elevados; a conquista de maior autonomia pelos empregados. B) O enxugamento dos cargos de comando; a competição externa pelos cargos mais elevados; a conquista de maior autonomia pelos empregados. C) O enxugamento dos cargos operacionais; a competição interna pelos cargos mais elevados; a conquista de maior autonomia pelos empregados. D) O enxugamento dos cargos operacionais; a competição interna pelos cargos mais elevados; as parcerias com os fornecedores. E) Maior contratação para os cargos operacionais; a competição interna pelos cargos mais elevados; a conquista de maior autonomia pelos empregados. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Instalações prediais de águas pluviais A chuva de projeto é o primeiro parâmetro a ser estimado para o projeto de instalações prediais. Como este é altamente probabilístico, uma abordagem a partir de um banco de dados consistente é utilizada na prática brasileira. Julgue as afirmações a seguir: I. A chuva de projeto pode ser estimada a partir do ajuste das curvas IDF, que levam em conta a intensidade, a duração e a frequência com que ocorrem. II. O tempo de retorno é um parâmetro que define o tempo para que a chuva retorne. III. O coeficiente de deflúvio relaciona a porção de chuva incidente com o escoamento superficial gerado por esta. IV. Os coeficientes de ajustes utilizados nas curvas IDF são frutos de pressupostos teóricos associados à mecânica dos fluidos. Assinale a alternativa correta. A) I e II são verdadeiras. B) I e III são verdadeiras. C) II e III são verdadeiras. D) II e IV são verdadeiras. E) III e IV são verdadeiras. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Hidrologia |
O método racional é muito utilizado na determinação de vazão máxima de projeto para pequenas bacias hidrográficas. Uma bacia hidrográfica com área de 100 ha, coeficiente de escoamento médio de 0,6, recebeu uma precipitação intensa de 120 mm/h, resultando em uma vazão de pico de 20 m3/s. Qual a vazão de pico para a mesma bacia hidrográfica se ocorresse uma precipitação de 90 mm/h. A) 30 m3/s. B) 20 m3/s. C) 10 m3/s. D) 5 m3/s. E) 15 m3/s. Verificar Resposta Estudar Cards Todas as Questões |
Vamos testar seus conhecimentos em Engenharia Civil - Instalações Hidráulicas Prediais |
Instalações prediais de águas pluviais Um professor de engenharia que gostava de fazer os alunos pensarem ativamente e questionarem a base das tabelas e ábacos fez uma pergunta em classe a partir dos ábacos da NBR 10844 de instalações prediais de águas pluviais: por que os ábacos com saída do tipo aresta viva fornecem maiores diâmetros que as do tipo funil? Cinco principais explicações foram fornecidas pelas classes, mas apenas uma estava correta. Marque a opção que explica corretamente o fenômeno. A) As saídas do tipo aresta viva fornecem maior capacidade de escoamento por permitir maior lâmina de água imediatamente sobre a entrada. B) As saídas do tipo funil geram aumento da perda de carga, ocasionando uma redução da capacidade hidráulica, que é, então, expressa no ábaco. C) As saídas em aresta viva geram uma incorporação de ar indesejada ao escoamento, ocasionando um efeito de sucção que reduz a capacidade hidráulica. D) As saídas do tipo funil necessitam de maior altura até chegar ao diâmetro da tubulação e isso é compensado em relação ao parâmetro L do ábaco. E) As saídas em arestas vivas têm menor perda de carga, o que implica a incorporação de ar com consequente redução da capacidade hidráulica. Verificar Resposta Estudar Cards Todas as Questões |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
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 |