Você está aqui: Delphi ::: Imagens, Gráficos e Cores ::: TBitmap (A classe TBitmap)

Como retornar a altura de uma imagem carregada no TBitmap do Delphi usando a propriedade Height

Quantidade de visualizações: 855 vezes
Em algumas situações situações nós queremos saber a altura em pixels de uma imagem carregada em um objeto TBitmap da linguagem Delphi. Para isso nós podemos usar sua propriedade Height.

Veja um trecho de código Delphi no qual carregamos uma imagem JPG em um TJpegImage para carregar uma imagem JPEG. Em seguida nós transferimos essa imagem para um bitmap e o desenhamos na superfície do formulário. Note a chamada à propriedade Height da classe TBitmap para retornar a altura da imagem como um Integer (representando a altura em pixels):

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

// não se esqueça de adicionar 'JPEG' no uses
procedure TForm4.Button1Click(Sender: TObject);
var
  jpg: TJpegImage;
  bmp: TBitmap;
begin
  // vamos criar um novo objeto TJpegImage
  jpg := TJpegImage.Create;

  // agora vamos carregar a imagem JPG desejada
  jpg.LoadFromFile('C:\estudos_java\lago.jpg');

  // agora criamos o bitmap
  bmp := TBitmap.Create;
  // e atribuimos o JPG ao Bitmap
  bmp.Assign(jpg);

  // finalmente desenhamos o bitmap no form
  Form4.Canvas.Draw(0, 0, bmp);

  // vamos mostrar a altura do bitmap
  ShowMessage('A altura da imagem é: ' + IntToStr(bmp.Height) +
    ' pixels.');

  // e limpamos o JPG e o Bitmap
  bmp.free;
  jpg.free;
end;

Ao executar este código Delphi nós teremos um resultado parecido com:

A altura da imagem é: 500 pixels.

Link para compartilhar na Internet ou com seus amigos:

Delphi ::: Dicas & Truques ::: Matemática e Estatística

Como obter o resultado de uma divisão de inteiros, incluindo o resto, usando a procedure DivMod() do Delphi

Quantidade de visualizações: 15959 vezes
Em algumas situações precisamos obter o resultado de uma divisão de inteiros e gostaríamos de obter também o resto da divisão, ou seja, se dividirmos 10 por 3 o resultado será 3 (3 x 3 = 9) e o resto será 1.

A procedure DivMod(), presente na unit Math nos permite fazer isso. Ela requer quatro argumentos:

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

procedure DivMod(Dividend: Integer; Divisor: Word; 
  var Result, Remainder: Word);

Veja que fornecemos o dividendo e o divisor como Integer e Word mas, as variáveis que receberão o resultado e o resto da divisão deverão ser passadas por referência. Veja um exemplo:

----------------------------------------------------------------------
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
  dividendo, divisor: Integer;
  resultado, resto: Word;
begin
  // uses Math

  // vamos dividir 10 por 3
  dividendo := 10;
  divisor := 3;
  DivMod(dividendo, divisor, resultado, resto);

  // vamos exibir o resultado
  ShowMessage('Resultado da divisão: ' + IntToStr(resultado));

  // vamos exibir o resto
  ShowMessage('Resto da divisão: ' + IntToStr(resto));
end;

Note que DivMod() realiza seu trabalho e guarda os resultados nas variáveis resultado e resto, que, como vimos na assinatura da procedure, devem ser fornecidas por referência.

Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009.


Delphi ::: Dicas & Truques ::: Strings e Caracteres

Como verificar se uma substring está contida no final de uma string usando a função AnsiEndsStr() do Delphi

Quantidade de visualizações: 11285 vezes
Em algumas situações precisamos verificar se uma substring está contida no final de uma string, ou seja, se a string termina com um determinado sufixo. Em Delphi isso pode ser feito com o auxílio da função AnsiEndsStr(). Esta função requer a substring a ser pesquisada e a string alvo da pesquisa. O retorno será true se a substring estiver contida no final da string. Do contrário o retorno será false. Veja o exemplo:

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

procedure TForm1.Button1Click(Sender: TObject);
var
  frase: string;
begin
  frase := 'Gosto muito de Delphi e Java';

  // vamos verificar se a string termina com "Java"
  if AnsiEndsStr('Java', frase) then
    ShowMessage('A frase termina com a substring indicada')
  else
    ShowMessage('A frase NÃO termina com a substring indicada')
end;

Não se esqueça de adicionar a unit StrUtils no uses do seu formulário.

Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009.


Delphi ::: VCL - Visual Component Library ::: TStringGrid

Como definir a altura padrão das linhas em um TStringGrid do Delphi usando a propriedade DefaultRowHeight

Quantidade de visualizações: 10739 vezes
A propriedade DefaultRowHeight é útil quando queremos obter ou definir a altura padrão das linhas de um TStringGrid. Por padrão, o valor desta propriedade é 24 pixels.

Veja no trecho de código abaixo como o valor desta propriedade é obtido:

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

procedure TForm1.Button1Click(Sender: TObject);
begin
  // vamos obter a altura padrão das linhas
  // do TStringGrid
  Memo1.Lines.Add('A altura padrão das linhas do TStringGrid é: ' +
    IntToStr(StringGrid1.DefaultRowHeight));
end;

Ao executar este trecho de código você terá o seguinte resultado:

A altura padrão das linhas do TStringGrid é: 24.

Podemos definir a altura padrão das linhas do TStringGrid em tempo de design ou execução simplemente definindo um valor inteiro para sua propriedade DefaultRowHeight. Veja:

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

procedure TForm1.Button1Click(Sender: TObject);
begin
  // vamos definir a altura padrão das linhas
  // do TStringGrid
  StringGrid1.DefaultRowHeight := 50;
end;

Quando novas linhas são adicionadas por meio da propriedade RowCount, suas alturas serão aquelas da propriedade DefaultRowHeight.


Vamos testar seus conhecimentos em Hidrologia

(IFTM 2018) O Brasil possui uma das mais extensas e diversificadas redes fluviais do mundo, dividida em 12 regiões hidrográficas: Bacia Amazônica, Bacia Tocantins-Araguaia, Bacia do Paraguai, Bacia Atlântico Nordeste Ocidental, Bacia Atlântico Nordeste Oriental, Bacia do Paraná, Bacia do Parnaíba, Bacia do São Francisco, Bacia do Atlântico Leste, Bacia do Atlântico Sudeste, Bacia do Atlântico Sul e Bacia do Uruguai.

Disponível em: http://www.brasil.gov.br/noticias/meioambiente/2009/10/rios-e-bacias-do-brasil-formam-uma-dasmaiores-redes-fluviais-do-mundo. Adaptado. Acesso em: 16 de out de 2018.

Marque a alternativa que apresenta apenas as bacias hidrográficas que banham a Região Centro-Oeste.

A) Paraná, Paraguai, Tocantins-Araguaia, Amazônica.

B) Tocantins-Araguaia, Atlântico Sul, Uruguai, Paraguai.

C) Paraguai, Uruguai, São Francisco e Atlântico Nordeste.

D) Atlântico Nordeste, Paraguai, Amazônica, Parnaíba.

E) Amazônica, Atlântico Leste, Tocantins-Araguaia e São Francisco.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Python

Qual o resultado da execução do seguinte código Python?

palavra = "ESTUDAR"
resultado = palavra[::-1]
print(resultado)

A) ESTUDAR

B) EST

C) RADUTSE

D) TUDAR

E) ESTUDA
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Java

Analise o seguinte código Java

public class Estudos {
  public static void main(String[] args) {
    int a = 3;
    System.out.println(++a * 8);
  }
}

Qual é o resultado de sua execução?

A) 24

B) 32

C) 72

D) 25
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em JavaScript

A instrução default é obrigatória na construção switch...case...default do JavaScript?

A) Sim

B) Não
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Fenômeno de Transportes e Hidráulica

Transporte de fluidos por bombas

O objetivo no transporte de fluidos por bombas é transferir energia ao fluido, compensar as perdas por atrito e aumentar a vazão no transporte com diferença de altura ou de pressão. Suponha que escoe petróleo cru por uma tubulação horizontal com auxílio de uma bomba com eficiência de 85%. Qual potência deve ser fornecida na entrada da estação de bombeamento para vazão de 2,94m3/s? Considere que a queda de pressão estimada ao longo do escoamento é de 7,92MPa.

A) 23,30MW.

B) 27,41MW.

C) 19,80MW.

D) 85,00MW.

E) 7,96MW.
Verificar Resposta Estudar Cards Todas as Questões

Desafios, Exercícios e Algoritmos Resolvidos de Delphi

Veja mais Dicas e truques de Delphi

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware 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 funcionalidadesControle 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
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



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