Delphi ::: VCL - Visual Component Library ::: TComboBox

Como detectar o evento OnSelect da classe TComboBox do Delphi

Quantidade de visualizações: 13738 vezes
O evento OnSelect da classe TComboBox é disparado quando o usuário seleciona um item (uma string) na lista drop-down do componente. Este evento possui a seguinte assinatura:

property OnSelect: TNotifyEvent;

Um evento do tipo TNotifyEvent não possui parâmetros específicos ao evento ocorrido. Assim, no evento OnSelect temos acesso somente ao parâmetro Sender, do tipo TObject, que nos informa em qual componente o evento ocorreu.

Vamos ver um exemplo? Veja o código para o tratamento do evento OnSelect de um ComboBox. Aqui, todas as vezes que o evento disparar, nós vamos exibir o valor do novo item:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm3.ComboBox1Select(Sender: TObject);
begin
  // vamos mostrar o novo item selecionado
  ShowMessage('O novo item selecionado é: ' +
    ComboBox1.Items[ComboBox1.ItemIndex]);
end;

Note que o evento OnSelect é disparado somente após a mudança de seleção e, consequentemente, a atualização da propriedade Text, que deverá refletir o novo item.


Python ::: Desafios e Lista de Exercícios Resolvidos ::: Hidrologia e Hidráulica

Exercícios Resolvidos de Python - Qual seria a vazão (m3/h) de saída para uma bacia hidrográfica "completamente impermeável", com área de 60 km2, sob uma chuva constante

Quantidade de visualizações: 621 vezes
Pergunta/Tarefa:

1) Qual seria a vazão (m3/h) de saída para uma bacia hidrográfica "completamente impermeável", com área de 60 km2, sob uma chuva constante à taxa de 10 mm/h?

A) 180.000 m3/h

B) 6.000 m3/h

C) 600.000 m3/h

D) 60.000 m3/h

E) 600.000.000 m3/h

Sua saída deve ser parecida com:

Área da bacia em km2: 60
Precipitação em mm/h: 10
A vazão é: 600000.0 m3/h
Resposta/Solução:

O primeiro passo para resolver esta questão é relembrar a fórmula da vazão:

\[\text{Q} = \text{A} \cdot \text{v}\]

Onde:

Q = vazão em m3/s, m3/h, etc;

A = área da bacia m2, km2, etc.

v = a taxa da chuva, ou seja, a precipitação em mm/s, mm/h, etc.

A maior dificuldade aqui é a conversão das unidades, pois o exercício nos pede a vazão em m3/h. Por essa razão temos que converter a área para metros quadrados e a precipitação em milímetros para precipitação em metros.

Então, hora de vermos a resolução comentada deste exercício usando Python:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

# função principal do programa
def main():
  # vamos ler a área da bacia em km2
  area = float(input("Área da bacia em km2: "))
    
  # vamos ler a precipitação em milímetros por hora
  precipitacao = float(input("Precipitação em mm/h: "))
    
  # vamos calcular a vazão em metros cúbicos por hora
  # primeiro convertemos a área para metros quadrados
  area = area * 1000000.0
  # agora convertemos milímetros para metros
  precipitacao = precipitacao / 1000.0
  # e calculamos a vazão
  vazao = area * precipitacao
    
  # e mostramos o resultado
  print("A vazão é: {0} m3/h".format(vazao))
  
if __name__== "__main__":
  main()



Delphi ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o comprimento da hipotenusa em Delphi dadas as medidas do cateto oposto e do cateto adjascente

Quantidade de visualizações: 1860 vezes
Nesta dica mostrarei como é possível usar a linguagem Delphi para retornar o comprimento da hipotenusa dadas as medidas do cateto oposto e do cateto adjascente. Vamos começar analisando a imagem a seguir:



Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados.

Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras), tudo que temos a fazer a converter esta fórmula para código Delphi. Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

procedure TForm2.Button1Click(Sender: TObject);
var
  a, b, c: Real;
begin
  a := 20; // medida do cateto oposto
  b := 30; // medida do cateto adjascente

  // agora vamos calcular o comprimento da hipotenusa
  c := sqrt(sqr(a) + sqr(b));

  // e mostramos o resultado
  Edit1.Text := 'A medida da hipotenusa é: ' +
    FloatToStr(c);
end;

Perceba que o cálculo foi efetuado a partir do evento Click de um botão Button1 e o resultado foi exibido na propriedade Text de uma caixa de texto Edit1.

Ao executar este código Delphi nós teremos o seguinte resultado:

A medida da hipotenusa é: 36,0555127546399

Como podemos ver, o resultado retornado com o código Delphi confere com os valores da imagem apresentada.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição

Exercícios Resolvidos de Java - Laços - Faça um programa para calcular o valor das seguintes expressões

Quantidade de visualizações: 2312 vezes
Exercício Resolvido de Java - Laços - Faça um programa para calcular o valor das seguintes expressões

Pergunta/Tarefa:

Faça um programa para calcular o valor das seguintes expressões:

1) __$S_1 = \frac{1}{1} + \frac{3}{2} + \frac{5}{3} + \frac{7}{4} + \text{...} + \frac{99}{50} __$

2) __$S_2 = \frac{2^1}{50} + \frac{2^2}{49} + \frac{2^3}{48} + \text{...} + \frac{2^\text{50}}{1} __$

3) __$S_3 = \frac{1}{1} - \frac{2}{4} + \frac{3}{9} - \frac{4}{16} + \frac{5}{25} - \text{...} - \frac{10}{100} __$

Resposta/Solução:

Em ambas as expressões nós temos o último termo nos informando os valores limites. Dessa forma, basta fixarmos um laço for ou laço while com estes limites.

Veja a resolução deste exercício em código Java console:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

package arquivodecodigos;

public class Estudos{
  public static void main(String[] args){
    // primeira expressão
    int numerador = 1;
    int denominador = 1;
    double resultado = 0.0;
    
    // laço while para montar os termos e fazer a somatória
    while(numerador <= 99){
      resultado = resultado + ((numerador * 1.0) / denominador);
      numerador = numerador + 2;
      denominador++;
    }
    
    // agora mostramos o resultado
    System.out.println("Primeira expressão: " + resultado);
    
    // segunda expressão
    int expoente = 1;
    denominador = 50;
    resultado = 0.0;
    
    // laço while para montar os termos e fazer a somatória
    while(denominador >= 1){
      resultado = resultado + ((Math.pow(2, expoente) * 1.0) / denominador);
      expoente++;
      denominador--;
    }
    
    // agora mostramos o resultado
    System.out.println("Segunda expressão: " + resultado);
    
    // terceira expressão
    numerador = 1;
    denominador = 1;
    resultado = 0.0;
    int sinal = 1;
    
    // laço while para montar os termos e fazer a somatória
    while(numerador <= 10){
      if(sinal > 0){ // somar
        resultado = resultado + ((numerador * 1.0) / denominador);
      }
      else{ // subtrair
        resultado = resultado - ((numerador * 1.0) / denominador);
      }
      
      numerador++;
      denominador = numerador * numerador;
      sinal = sinal * -1;
    }
    
    // agora mostramos o resultado
    System.out.println("Terceira expressão: " + resultado);
  }
}

Ao executar este código Java nós teremos o seguinte resultado:

Primeira expressão: 95.5007946616706
Segunda expressão: 1.5608286920413398E15
Terceira expressão: 0.6456349206349207


Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby


E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser. Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 32,90

Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.


© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 91 usuários muito felizes estudando em nosso site.