Você está aqui: C# ::: Windows Forms ::: ListBox |
Exibindo ou ocultado a barra de rolagem horizontal de uma ListBoxQuantidade de visualizações: 11593 vezes |
A barra de rolagem horizontal para uma ListBox pode ser exibida definindo-se o valor true para a propriedade HorizontalScrollbar. Por padrão, esta propriedade tem o valor false, ou seja, se os itens da lista forem mais longos que a lista, eles serão truncados. O valor para a propriedade HorizontalScrollbar pode ser definida em tempo de execução da seguinte forma: private void button2_Click(object sender, EventArgs e) { // oculta a barra de rolagem horizontal listBox1.HorizontalScrollbar = false; // exibe a barra de rolagem horizontal listBox1.HorizontalScrollbar = true; } |
![]() |
C# ::: Dicas & Truques ::: Tipos de Dados |
Curso de C# - Como usar os tipos de dados short e ushort da linguagem C#Quantidade de visualizações: 9135 vezes |
O tipo de dados short é um tipo primitivo integral com sinal (signed) que pode armazenar valores inteiros na faixa de -32.768 até 32.767. Este tipo ocupa 16 bits (2 bytes) de memória e é um apelido para o tipo System.Int16 da plataforma .NET. Podemos obter os valores mínimo e máximo que podem ser armazenados em um short por meio de suas propriedades MinValue e MaxValue. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ // vamos obter o valor mínimo de um short short minimo = short.MinValue; // vamos obter o valor máximo de um short short maximo = short.MaxValue; // vamos mostrar o resultado Console.WriteLine("A faixa de valores de um short é: " + minimo + " até " + maximo); // vamos pausar a execução Console.ReadKey(); } Ao executarmos este código teremos o seguinte resultado: A faixa de valores de um short é: -32768 até 32767. Ao atribuir valores para um short em tempo de design, ou seja, como um literal, devemos ter o cuidado de não atribuir valores que estejam fora da faixa permitida. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ // a linha abaixo não vai compilar short valor = 35767; // vamos pausar a execução Console.ReadKey(); } Este código não compila. A mensagem de erro: Constant value '35767' cannot be converted to a 'short' nos informa que o valor 35767 (que está acima da faixa permitida) não pode ser convertido para um short. Assim, se você desejar mesmo efetuar tal procedimento, uma conversão forçada (cast) deve ser feita: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ int valor = 35767; // vamos forçar a conversão para short short valor2 = (short)valor; // vamos mostrar o resultado Console.WriteLine("Valor após o cast: " + valor2); // vamos pausar a execução Console.ReadKey(); } Aqui nós "esprememos" o valor 35767 para um short e o resultado, -29769, definitivamente não é o que estávamos esperando. O tipo ushort é um tipo primitivo integral sem sinal (unsigned) que pode armazenar valores inteiros na faixa de 0 até 65.535. Este tipo ocupa 16 bits (2 bytes) de memória e é um apelido para o tipo System.UInt16 da plataforma .NET. Podemos obter os valores mínimo e máximo que podem ser armazenados em um ushort por meio de suas propriedades MinValue e MaxValue. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- static void Main(string[] args){ // vamos obter o valor mínimo de um ushort ushort minimo = ushort.MinValue; // vamos obter o valor máximo de um ushort ushort maximo = ushort.MaxValue; // vamos mostrar o resultado Console.WriteLine("A faixa de valores de um ushort é: " + minimo + " até " + maximo); // vamos pausar a execução Console.ReadKey(); } Ao executarmos este código teremos o seguinte resultado: A faixa de valores de um ushort é: 0 até 65535. |
C# ::: Dicas & Truques ::: Mouse e Teclado |
C# Windows Forms - Como tratar eventos do mouse em suas aplicações C# Windows FormsQuantidade de visualizações: 16449 vezes |
Aplicações de interface gráfica (GUI) em C# fazem uso extensivo do mouse e qualquer classe que herde de System.Windows.Forms.Control pode receber e tratar seus eventos. Os eventos do mouse mais comuns são pressionamento (click), liberação, movimento, etc. E cada um possui suas particularidades. Sempre que um evento do mouse ocorre, as informações sobre tal evento são fornecidas ao método de tratamento de evento por meio de um objeto da classe MouseEventArgs (alguns eventos usam EventArgs) e o delegate usado para criar os gerenciadores de eventos do mouse é MouseEventHandler. Veja, por exemplo, o tratador de evento para o evento MouseClick de um Button: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void button1_MouseClick(object sender, MouseEventArgs e){ MessageBox.Show("Sou um Button e acabei de ser clicado!"); } A classe MouseEventArgs é muito útil, pois é ela que nos permite obter informações sobre qual botão foi pressionado, as coordenadas x e y do evento, se um duplo-clique ocorreu, etc. Veja um trecho de código no qual verificamos qual botão do mouse foi pressionado durante um evento MouseUp em um formulário: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- private void Form1_MouseUp(object sender, MouseEventArgs e){ if(e.Button == MouseButtons.Left){ MessageBox.Show("Fui clicado com o botão esquerdo!"); } else if(e.Button == MouseButtons.Right){ MessageBox.Show("Fui clicado com o botão direito!"); } else if (e.Button == MouseButtons.Middle){ MessageBox.Show("Fui clicado com o botão do meio!"); } else{ MessageBox.Show("O que está acontecendo?"); } } Veja os eventos do mouse que possuem um objeto da classe EventArgs: a) MouseEnter - Ocorre quando o cursor do mouse entra na área de um controle. b) MouseLeave - Ocorre quando o cursor do mouse deixa a área de um controle. c) Click - Ocorre quando clicamos na área de um controle. Note que um click do mouse envolve pressionar e liberar o botão do mouse. Veja os eventos do mouse que possuem um objeto da classe MouseEventArgs: a) MouseDown - Ocorre quando o botão do mouse é pressionado dentro da área de um controle. b) MouseHover - Ocorre quando o cursor do mouse pára sobre a área de um controle (sem clique, pressionamento ou movimento). c) MouseMove - Ocorre quando movimentamos o mouse na área de um controle. d) MouseUp - Ocorre quando o botão do mouse é liberado sobre a área de um controle. e) MouseClick - Ocorre quando clicamos na área de um controle. Note que um click do mouse envolve pressionar e liberar o botão do mouse. Há algumas diferenças significativas entre os eventos Click e MouseClick. Não deixe de consultar as outras dicas desta seção para aprofundar seus conhecimentos. |
C# ::: Dicas & Truques ::: Arquivos e Diretórios |
Como excluir um diretório em C# usando a função Delete() da classe DirectoryInfoQuantidade de visualizações: 80 vezes |
O método Delete() da classe DirectoryInfo do C# é muito útil quando precisamos excluir um diretório. Esta função é do tipo void, ou seja, não retorna nada. Veja um código completo demonstrando o seu uso: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- using System; using System.IO; namespace Estudos { class Principal { static void Main(string[] args) { // vamos criar uma nova instância da classe DirectoryInfo DirectoryInfo dir = new DirectoryInfo(@"C:\estudos_csharp\imagens"); // vamos tentar excluir o diretório try { dir.Delete(); Console.WriteLine("Diretório excluído com sucesso."); } catch (Exception e) { Console.WriteLine("Não foi possível excluir o diretório: {0}", e.ToString()); } Console.WriteLine("\nPressione uma tecla para sair..."); Console.ReadKey(); } } } Ao executar este código C# nós teremos o seguinte resultado: Diretório excluído com sucesso. Se o diretório a ser excluido não estiver vazio, a chamada ao método System.IO.DirectoryInfo.Delete() poderá gerar o seguinte erro: Não foi possível excluir o diretório: System.IO.IOException: A pasta não está vazia. : 'C:\estudos_csharp\imagens' at System.IO.FileSystem.RemoveDirectoryInternal(String fullPath, Boolean topLevel, Boolean allowDirectoryNotEmpty) at System.IO.FileSystem.RemoveDirectory(String fullPath, Boolean recursive) at System.IO.DirectoryInfo.Delete() at Estudos.Principal.Main(String[] args) in C:\estudos_c#\Estudos\Principal.cs:line 12 |
Desafios, Exercícios e Algoritmos Resolvidos de C# |
Veja mais Dicas e truques de C# |
Dicas e truques de outras linguagens |
CSS - CSS3 - O que são CSS media queries e como usá-las em suas páginas web para criar designs responsivos Java - Como criar um Jogo da Velha em Java - Jogo completo com código fonte comentado - Versão console |
Códigos Fonte |
![]() 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 |
![]() 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 |