![]() |
|
||||
![]() Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica. |
|||||
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como usar o controle TListBox em suas aplicações DelphiQuantidade de visualizações: 13966 vezes |
Objetos da classe TListBox, da unit StdCtrls, são controles do tipo lista de seleção. Este componente exibe uma lista com barras de rolagem contendo items que podem ser selecionados, adicionados ou excluídos. A classe TListBox é um wrapper (invólucro) para o controle LISTBOX da plataforma Windows. Em controles do tipo ListBox o usuário pode selecionar apenas um ítem ou vários itens de uma vez. Em Delphi, a classe TListBox implementa o comportamento genérico definido em TCustomListBox. É esta classe que devemos usar para derivar nossa própria ListBox caso o controle TListBox não satisfaça as nossas necessidades. É claro que podemos partir de qualquer classe que herde de TCustomListBox. A forma mais comum de adicionarmos um controle TListBox em nossos formulários é selecionando este componente na aba Standard e arrastando-o para a posição desejada na janela. Em seguida podemos adicionar itens na lista acessando sua propriedade Items, que são do tipo TStrings, ou seja, uma lista de strings. Ao clicarmos na propriedade Items no Object Inspector, um String List Editor será exibido. Basta inserir algumas strings nesta caixa de texto, pressionar o botão OK e verificar como o controle já exibe os itens que acabamos de inserir. Em tempo de execução, itens podem ser adicionados à uma TListBox usando códigos parecidos com: procedure TForm1.Button1Click(Sender: TObject); begin // vamos inserir um novo item na TListBox ListBox1.Items.Add('Osmar J. Silva'); end; Se precisarmos obter o texto do ítem selecionado em uma TListBox, podemos usar: procedure TForm1.Button1Click(Sender: TObject); begin // vamos obter o texto do item selecionado na TListBox ShowMessage(ListBox1.Items[ListBox1.ItemIndex]); end; Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
C# ::: Windows Forms ::: TextBox |
C# Windows Forms Avançado - Como rolar as linhas de um TextBox para o topo (parte superior) usando a API do WindowsQuantidade de visualizações: 7145 vezes |
Em algumas situações gostaríamos de rolar para cima o conteúdo de um TextBox de múltiplas. Para isso podemos usar a API do Windows, mais especificamente a mensagem WM_VSCROLL com o valor SB_TOP para seu parâmetro wParam. O valor do parâmetro lParam é zero. Veja um trecho de código que rola para cima o conteúdo de um TextBox. Antes de executar este exemplo, tenha a certeza de ter um TextBox de múltiplas, com barras de rolagem e conteúdo que force o aparecimento das barras de rolagem. Comece adicionando a linha: using System.Runtime.InteropServices; na seção de usings do seu formulário ou classe. Em seguida adicione o trecho de código abaixo no corpo da classe, como um método: [DllImport("user32.dll", EntryPoint = "SendMessage", CharSet = CharSet.Auto, SetLastError = true)] private static extern IntPtr SendMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam); Finalmente coloque o código abaixo no evento Click de um botão: private void button2_Click(object sender, EventArgs e){ // antes de executar este exemplo certifique-se de que // a propriedade Multiline do TextBox esteja definida // como true e a propriedade ScrollBars contenha o valor // Vertical ou Both textBox1.Multiline = true; textBox1.ScrollBars = ScrollBars.Vertical; // constante para a mensagem WM_VSCROLL const uint WM_VSCROLL = 0x115; // constante para o parâmetro wParam const int SB_TOP = 6; // handle para a caixa de texto IntPtr handle = textBox1.Handle; IntPtr wParam = (IntPtr)SB_TOP; IntPtr lParam = IntPtr.Zero; // vamos fazer com que o TextBox role para o topo (parte superior) SendMessage(textBox1.Handle, WM_VSCROLL, wParam, lParam); } |
Python ::: Dicas & Truques ::: Lista (List) |
Python para iniciantes - Como inserir itens em posições específicas de uma lista usando o método insert()Quantidade de visualizações: 10937 vezes |
Nesta dica eu mostrarei como usar a função insert() do objeto List da linguagem Python para inserir um novo elemento em uma determinada posição da lista. A função recebe o índice no qual o elemento será inserido e o seu valor. Veja o código completo para o exemplo: # função principal do programa def main(): # cria uma lista de inteiros valores = [2, 5, 12, 2, 3, 32, 18] print("Valores na lista:", valores, "\n") # valor a ser inserido valor = int(input("Informe um inteiro: ")) # índice a ser inserido (começa em 0) pos = int(input("Informe uma posicao: ")) # insere o valor na posição determinada valores.insert(pos, valor) # exibe os valores da lista novamente print("Valores na lista:", valores, "\n") if __name__== "__main__": main() Ao executar este código Python nós teremos o seguinte resultado: Valores na lista: [2, 5, 12, 2, 3, 32, 18] Informe um inteiro: 45 Informe uma posicao: 2 Valores na lista: [2, 5, 45, 12, 2, 3, 32, 18] |
Java ::: Fundamentos da Linguagem ::: Variáveis e Constantes |
Curso Completo de Java - Como usar constantes em JavaQuantidade de visualizações: 15572 vezes |
O valor de uma variável pode ser alterado durante a execução do programa. Mas, o valor de uma constante não é alterado jamais. Escritas sempre com letras maiúsculas, as constantes trazem algumas vantagens, entre elas o fato de que nomes descritivos para constantes podem tornar o programa mais fácil de ser lido. Além disso, o valor representado pela constante pode ser alterado em apenas um lugar do código fonte. Veja abaixo como declarar e usar uma constante em Java: // Este exemplo mostra como declarar e usar // uma constante em Java public class Estudos{ final static int IDENT_PROGRAMA = 47; public static void main(String args[]){ System.out.println("O valor da constante " + "é " + IDENT_PROGRAMA); System.exit(0); } } Observe que usamos o modificador final para marcar um identificador como constante. Veja agora o que acontece quando tentamos alterar o valor de uma constante em tempo de compilação: // vamos tentar alterar o valor da constante IDENT_PROGRAMA = 29; O compilador emitirá a seguinte mensagem de erro: Estudos.java:9: cannot assign a value to final variable IDENT_PROGRAMA IDENT_PROGRAMA = 29; ^ 1 error |
Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Exercícios Resolvidos de Java - Como converter decimal em binário em Java usando o laço whileQuantidade de visualizações: 6861 vezes |
Pergunta/Tarefa: Escreva um programa Java que usa o laço while para converter um número decimal em sua representação binária. Peça ao usuário para informar um número inteiro e mostre o mesmo em binário (como uma String). Você deve obrigatoriamente usar o laço while. Sua saída deverá ser parecida com: Informe um número decimal: 38 A representação binária é 100110 Veja a resolução comentada deste exercício usando Java: package estudos; import java.util.Scanner; public class Estudos { public static void main(String[] args) { // vamos fazer a leitura usando a classe Scanner Scanner entrada = new Scanner(System.in); // vamos ler o número decimal System.out.print("Informe um número decimal: "); int decimal = Integer.parseInt(entrada.nextLine()); int decimal_temp = decimal; // para mostrar o resultado no final String binario = ""; // vai guardar o resultado int temp; // variável auxiliar // laço while repetirá enquanto decimal for maior ou igual a 2 while(decimal >= 2){ temp = decimal % 2; binario = temp + binario; decimal = decimal / 2; } binario = decimal + binario; // insere o dígito 1 restante System.out.println("A representação binária é " + binario); } } |
JavaScript ::: Fundamentos da Linguagem ::: Estruturas de Controle |
JavaScript para leigos - Como usar o laço while da linguagem JavaScriptQuantidade de visualizações: 7305 vezes |
O laço while (também chamado de loop ou laço enquanto) da linguagem JavaScript é usado quando queremos repetir uma instrução ou um grupo de instruções ENQUANTO uma condição for satisfeita. Veja sua sintáxe:while(condição){ // uma instrução ou grupo de instruções } A condição pode ser qualquer expressão que resulte em um valor boolean (true ou false). Note também que o teste condicional é feito antes de cada iteração (repetição) do laço. Isso faz com que este laço, dependendo da condição inicial, possa nunca ser executado. Veja um trecho de código no qual usamos o laço while para contar de 0 até 10: <html> <head> <title>Estudos JavaScript</title> </head> <body> <script type="text/javascript"> var i = 0; while(i <= 10){ document.write(i + "<br>"); i++; } </script> </body> </html> Ao executarmos este código teremos o seguinte resultado: 0 1 2 3 4 5 6 7 8 9 10 Veja que declaramos uma variável de controle i e a inicializamos com o valor 0. Na entrada do laço nós verificamos se seu valor é menor ou igual a 10. Como esta condição é satisfeita, o laço é executado pela primeira vez. No corpo do laço nós exibimos o valor da variável de controle e a incrementamos em 1. Agora o ciclo se repete. A condição é testada novamente. Se esta for satisfeita, o código entra no corpo do laço novamente e assim por diante. Veja agora como modificar o laço while anterior para exibir os números de 10 até 0: <html> <head> <title>Estudos JavaScript</title> </head> <body> <script type="text/javascript"> var i = 10; while(i >= 0){ document.write(i + "<br>"); i--; } </script> </body> </html> Agora o resultado do código será: 10 9 8 7 6 5 4 3 2 1 0 Esta dica foi escrita e testada no Internet Explorer 8 e Firefox 3.6. |
Delphi ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas |
Como calcular o cosseno de um ângulo em Delphi usando a função Cos() - Calculadora de cosseno em DelphiQuantidade de visualizações: 1365 vezes |
Em geral, quando falamos de cosseno, estamos falando do triângulo retângulo de Pitágoras (Teorema de Pitágoras). A verdade é que podemos usar a função cosseno disponível nas linguagens de programação para calcular o cosseno de qualquer número, mesmo nossas aplicações não tendo nenhuma relação com trigonometria. No entanto, é sempre importante entender o que é a função cosseno. Veja a seguinte imagem: ![]() Veja que temos um triângulo retângulo com as medidas já calculadas para a hipotenusa e os dois catetos, assim como os ângulos entre eles. Assim, o cosseno é a razão entre o cateto adjascente e a hipotenusa, ou seja, o cateto adjascente dividido pela hipotenusa. Veja a fórmula: \[\text{Cosseno} = \frac{\text{Cateto adjascente}}{\text{Hipotenusa}} \] Então, se dividirmos 30 por 36.056 (na figura eu arredondei) nós teremos 0.8320, que é a razão entre o cateto adjascente e a hipotenusa (em radianos). Agora, experimente calcular o arco-cosseno de 0.8320. O resultado será 0.5881 (em radianos). Convertendo 0.5881 radianos para graus, nós obtemos 33.69º, que é exatamente o ângulo em graus entre o cateto adjascente e a hipotenusa na figura acima. Pronto! Agora que já sabemos o que é cosseno na trigonometria, vamos entender mais sobre a função cos() da linguagem Delphi. Esta função, incorporada por padrão à linguagem, recebe um valor numérico (Extended) e retorna um valor Extended, ou seja, também numérico) entre -1 até 1 (ambos inclusos). Veja: procedure TForm1.Button1Click(Sender: TObject); begin Memo1.Lines.Add('Cosseno de 0 = ' + FloatToStr(Cos(0))); Memo1.Lines.Add('Cosseno de 1 = ' + FloatToStr(Cos(1))); Memo1.Lines.Add('Cosseno de 2 = ' + FloatToStr(Cos(2))); end; Ao executar este código Delphi nós teremos o seguinte resultado: Cosseno de 0 = 1 Cosseno de 1 = 0,54030230586814 Cosseno de 2 = -0,416146836547142 Note que calculamos os cossenos dos valores 0, 1 e 2. Observe como os resultados conferem com a curva da função cosseno mostrada abaixo: ![]() |
Java ::: Coleções (Collections) ::: HashMap |
Como adicionar novos mapeamentos chave-valor a um HashMap do Java usando o método put()Quantidade de visualizações: 9665 vezes |
Novos mapeamentos chave-valor são adicionados a um HashMap da linguagem Java usando-se o método put(). Veja sua assinatura:public V put(K key, V value) Note que este método recebe a chave e o valor a ser inserido e retorna um objeto do mesmo tipo daquele fornecido no segundo argumento. Este retorno é muito útil para sabermos se o novo valor não sobrepôs um valor já existente. Se o retorno for null, o novo valor foi inserido. Caso contrário o retorno será o valor existente antes da sobreposição. Apenas tenha cuidado com valores null existentes como chaves ou valores. Nestes casos o retorno do método put não ajudará em nada. Veja um exemplo do uso do método put(): package estudos; import java.util.*; public class Estudos{ public static void main(String[] args){ // vamos criar uma instância de HashMap HashMap<Integer, String> clientes = new HashMap<Integer, String>(); // vamos adicionar três chaves e seus valores clientes.put(new Integer(1), "Osmar J. Silva"); clientes.put(new Integer(2), "Salvador Miranda de Andrade"); clientes.put(new Integer(3), "Marcos da Costa Santos"); // é possível também referenciar o valor adicionado // ao HashMap, uma vez que este é o retorno do métoto put() String nome = clientes.put(new Integer(2), "Carlos"); if(nome == null){ System.out.println("Novo valor inserido com sucesso"); } else{ System.out.println("Valor já existia. Houve sopreposição"); } System.exit(0); } } Ao executar este código Java nós teremos o seguinte resultado: Valor já existia. Houve sopreposição |
Python ::: Dicas & Truques ::: Livros, E-books, Apostilas e Cursos |
E-Book 650 Dicas, Truques e _Exercícios Resolvidos_ de Python - PDF com 1.200 páginasQuantidade de visualizações: 1273 vezes |
![]() Domine lógica de programação e a linguagem Python usando o nosso E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python. Trata-se de um PDF com 1.200 páginas para você estudar onde e quando quiser. Todos os códigos estão em português e comentados linha a linha para que você, em pouco tempo, adquira todo o conhecimento necessário para se tornar um(a) programador(a) experiente em Python. Este e-book contém anotações, dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, internet, arquivos e diretórios, Pandas, Pygame, Matplotlib, exercícios resolvidos, programação orientada a objetos e muito mais. Veja o conteúdo completo desse e-book: Conteúdo do E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas . Adquira pelo WhatsApp +55 (062) 98553-6711 (Osmar) ou diretamente pelo Mercado Pago (PIX, cartão de crédito, boleto, etc). |
Python ::: Dicas & Truques ::: Matemática e Estatística |
Como obter o resto de uma divisão de inteiros em Python - O operador módulo % da linguagem PythonQuantidade de visualizações: 20360 vezes |
Como obter o resto de uma divisão de inteiros em Python - O operador módulo % da linguagem Python Além dos operadores normais para aritmética, a linguagem Python nos fornece também o operador %, chamado comumente de operador de módulo. Este operador atua sobre dois valores inteiros e retorna o resto da divisão entre eles. Veja um exemplo completo de seu uso: def main(): a = 9 b = 2 res = a / b resto = a % b print(a, "dividido por", b, "é", res) print("O resto da divisao é", resto) if __name__== "__main__": main() Ao executarmos este código Python nós teremos o seguinte resultado: 9 dividido por 2 é 4.5 O resto da divisao é 1 |
Nossas 20 dicas & truques de programação mais populares |
C++ - Programação Orientada a Objetos em C++ - Como criar e usar métodos estáticos em suas classes C++ Revit Python Shell - Como copiar grupos no Revit usando a função Create.PlaceGroup() e o Revit Python Shell |
Você também poderá gostar das dicas e truques de programação abaixo |
QGIS - Como retornar o título do projeto do QGIS usando PyQGIS e a função title() da classe QgsProject Java - Como converter de octal para decimal usando o método parseInt() da classe Integer da linguagem Java |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |