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
Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: Delphi ::: Imagens, Gráficos e Cores ::: TBitmap (A classe TBitmap)

Computação gráfica em Delphi - Como usar a classe TBitmap do Delphi

Quantidade de visualizações: 16049 vezes
A classe TBitmap encapsula um bitmap Windows (HBITMAP, um handle para um bitmap), incluindo sua paleta (HPALETTE, um handle para uma paleta de cores).

Esta classe herda de TGraphic e é usada para criar, manipular (redimensionar, rolar, rotacionar, pintar, etc) e armazenar imagens na memória e como arquivos em disco.

A classe TBitmap contém muitas propriedades e métodos úteis. Entre seus métodos podemos citar LoadFromFile(), usado para carregar uma imagem bitmap a partir do disco e guardá-la em memória como um objeto TBitmap. Veja o trecho de código abaixo:

procedure TForm2.Button1Click(Sender: TObject);
var
  bmp: TBitmap;
begin
  // vamos criar o bitmap
  bmp := TBitmap.Create;

  // vamos carregar a imagem e guardá-la no bitmap
  bmp.LoadFromFile('foto.bmp');

  // vamos desenhar o bitmap no formulário
  // começando nas coordenadas x = 0; y = 0 a partir
  // do canto superior esquerdo da área cliente do formulário
  Form2.Canvas.Draw(0, 0, bmp);

  // vamos liberar o bitmap
  bmp.Free;
end;

Aqui nós carregamos o bitmap foto.bmp e o desenhamos na superfície do formulário usando o método Draw() do Canvas do formulário.

É possível também redimensionar o bitmap ao desenhá-lo no formulário. Veja este novo trecho de código:

procedure TForm2.Button1Click(Sender: TObject);
var
  bmp: TBitmap;
  retang: TRect; // um objeto TRect
begin
  // vamos criar o bitmap
  bmp := TBitmap.Create;

  // vamos carregar a imagem e guardá-la no bitmap
  bmp.LoadFromFile('foto.bmp');

  // vamos redimensionar o bitmap na memória de
  // acordo com o retângulo abaixo
  retang.Top := 0;
  retang.Left := 0;
  retang.Right := 200;
  retang.Bottom := 150;

  // vamos desenhar o bitmap usando o método
  // StretchDraw da classe TCanvas
  Form2.Canvas.StretchDraw(retang, bmp);

  // vamos liberar o bitmap
  bmp.Free;
end;

Aqui nós usamos um objeto do registro (record) TRect para criar um retângulo especificando o tamanho do bitmap e fornecemos tal retângulo, juntamente com o bitmap, para o método StretchDraw() da classe TCanvas. Este método redimensiona a imagem antes de desenhá-la na superfície do formulário.

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

Link para compartilhar na Internet ou com seus amigos:

PHP ::: Dicas & Truques ::: Gráficos e Cores

Como obter o tipo de uma imagem usando a função getimagesize() do PHP

Quantidade de visualizações: 9802 vezes
Muitas vezes precisamos saber o tipo de uma imagem antes de processá-la. Nestes casos podemos usar a função getimagesize() da linguagem PHP e obter o tipo da imagem no terceiro valor retornado. Este valor é um número inteiro correspondente a algumas das constantes IMAGETYPE_GIF, IMAGETYPE_JPEG, IMAGETYPE_PNG, etc. Veja um exemplo:

<?php
  // nome e local da imagem
  $imagem = "/home/xxxx/xxxx/public_html/imagem.jpg";
  
  // vamos obter o tipo da imagem...ele estará no terceiro 
  // elemento da lista
  list($largura, $altura, $tipo) = getimagesize($imagem);
  
  // testamos o tipo de imagem
  if($tipo == IMAGETYPE_JPEG)
    echo "O tipo da imagem é JPG ou JPEG";
  else if($tipo == IMAGETYPE_GIF)
    echo "O tipo da imagem é GIF";
  else if($tipo == IMAGETYPE_PNG)
    echo "O tipo da imagem é PNG"; 
  else
    echo "O tipo da imagem não está entre os tipos testados";
?>

Ao executar este código você terá um resultado parecido com:

O tipo da imagem é JPG ou JPEG



Java ::: Dicas & Truques ::: Expressões Regulares

Java Expressões Regulares - Como substituir todas as ocorrências de uma substring em uma string usando expressões regulares

Quantidade de visualizações: 9002 vezes
Este exemplo mostra como substituir todas as ocorrências de uma substring em uma string usando expressões regulares na linguagem Java.

Nesta dica nós substituimos todas as ocorrências de "Java" por "C++".

Veja o código completo:

package arquivodecodigos;

import java.util.regex.*;
 
public class Estudos{ 
  public static void main(String args[]){ 
    String padrao = "Java";
    Pattern regPat = Pattern.compile(padrao);
    String frase = "Java? Gosto muito de Java.";
    System.out.println("Frase original: " + frase);
    Matcher matcher = regPat.matcher(frase);
    String res = matcher.replaceAll("C++");
    System.out.println("Depois da substituição: " + res);
  } 
} 

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

Frase original: Java? Gosto muito de Java.
Depois da substituição: C++? Gosto muito de C++.


Java ::: Estruturas de Dados ::: Árvore Binária e Árvore Binária de Busca

Estruturas de Dados em Java - Como obter o nó com menor valor em uma árvore binária de busca em Java

Quantidade de visualizações: 2852 vezes
Em exemplos dessa seção nós vimos como criar árvores binárias e árvores binárias de busca em Java e como pesquisar ou fazer a sua travessia, visitando cada um dos nós. Nesta dica mostrarei como obter o nó com o menor valor em uma árvore binária. O truque aqui é descer o lado esquerdo da árvore até o último nó. Veja:

// método que permite retornar o menor nó de uma árvore
// binária de busca
public No retornarMenorElemento(){
  // chama a versão recursiva do método
  return retornarMenorElemento(raiz);
}
  
public No retornarMenorElemento(No no){
  if((no == null) || (no.getEsquerdo() == null)){
    return no; // ponto de parada
  }
  else{ // vamos continuar descendo do lado esquerdo
    return retornarMenorElemento(no.getEsquerdo());
  }
}

Este método faz parte da classe ArvoreBinariaBusca.java. Veja agora como chamá-lo a partir da classe principal, ou seja, a classe de teste:

package arvore_binaria;

import java.util.Scanner;

public class ArvoreBinariaTeste {
  public static void main(String[] args) {
    Scanner entrada = new Scanner(System.in);  
       
    // vamos criar um novo objeto da classe ArvoreBinariaBusca
    ArvoreBinariaBusca arvore = new ArvoreBinariaBusca();
    
    // vamos inserir 5 valores na árvore
    for(int i = 0; i < 5; i++){
      System.out.print("Informe um valor inteiro: ");
      int valor = Integer.parseInt(entrada.nextLine());
       
      // vamos inserir o nó e verificar o sucesso da operação
      if(!arvore.inserir(valor)){
        System.out.println("Não foi possível inserir." +
          " Um elemento já contém este valor.");  
      }
    }
     
    // vamos o menor elemento na árvore binária de busca
    System.out.println("\nO menor nó é: " + 
      arvore.retornarMenorElemento().getValor());
     
    System.out.println("\n");
  }
}

Ao executar este código teremos o seguinte resultado:

Informe um valor inteiro: 5
Informe um valor inteiro: 12
Informe um valor inteiro: 87
Informe um valor inteiro: 1
Informe um valor inteiro: 3

O menor nó é: 1



JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como chamar uma função de callback para os elementos individuais de um array usando a função forEach() - Vetores e matrizes em JavaScript

Quantidade de visualizações: 1678 vezes
O método forEach(), adicionado à linguagem JavaScript por meio do ECMAScript 5 (JavaScript 5, ECMAScript 2009, ES5) é usado quando queremos acessar os elementos de um vetor individualmente e chamar, para cada um deles, uma função de callback personalizada.

Veja no trecho de código abaixo como usar a função forEach() para obter a soma de todos os elementos maiores ou iguais a 20:

<script type="text/javascript">
  function obterSoma(valor, indice, vetor){
    if(valor >= 20){
      soma = soma + valor;
    }
  }  

  var valores = new Array(21, 5, 30, 7, 12, 3);
  // vamos obter a soma dos valores maiores ou iguais a 20
  var soma = 0;
  // percorremos os elementos do vetor individualmente
  valores.forEach(obterSoma);  
  window.alert("A soma é: " + soma);
</script>

Uma função passada para o método forEach() pode conter os seguintes argumentos (nessa mesma ordem):

a) O valor do item;
b) O índice do item (opcional);
c) O vetor a partir do qual o método forEach() está sendo chamado (opcional).

Veja mais um código no qual obtemos a soma dos elementos cujos valores sejam maiores que seu antecessor (com exceção do primeiro elemento):

<script type="text/javascript">
  function obterSoma(valor, indice, vetor){
    if(indice == 0){
      soma = soma + valor;
    }
    else{
      if(valor > vetor[indice - 1]){
        soma = soma + valor;  
      } 
    }
  }  

  var valores = new Array(8, 5, 30, 7, 12, 3);
  // vamos dos elementos cujos valores sejam   
  // maiores que seu antecessor (com exceção do
  // primeiro elemento)
  var soma = 0;
  // percorremos os elementos do vetor individualmente
  valores.forEach(obterSoma);  
  window.alert("A soma é: " + soma);
</script>

O resultado será 50, pois obtemos a soma dos valores 8, 30 e 12.


JavaScript ::: Dicas & Truques ::: Set (Conjunto)

Como remover elementos duplicados de um array em JavaScript usando um Set e o método Array.from()

Quantidade de visualizações: 1082 vezes
Sabemos de outras dica de JavaScript que o objeto Set nos permite criar conjuntos únicos, ou seja, sem repetições. Sabemos também que a função Array.from() possibilita a conversão de um Set em um Array JavaScript.

Dessa forma, é possível usar essa combinação para escrever uma função personalizada que recebe um vetor (array) e retorna um outro vetor, sem elementos repetidos.

Veja o código JavaScript completo para o exemplo:

<!doctype html>
<html>
<head>
  <title>O objeto Set do JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // função que permite remover os elementos
  // duplicados de um array
  function semRepeticoes(vetor){
    // primeiro criamos um novo Set a partir do
    // vetor fornecido
    // Em seguida usamos o método Array.from() para
    // converter o Set em um Array
    return Array.from(new Set(vetor));
  }

  // aqui declaramos um array de String
  // com nomes repetidos
  var nomes = ["Osmar", "Maria", "Carlos", "Maria",
    "Fernanda", "Fernanda", "Osmar"];
 
  // e aqui estão os resultados
  document.writeln("Com repetição: " + nomes);
  document.writeln("<br>Sem repetições: "  +
    semRepeticoes(nomes));
</script>
  
</body>
</html>

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

Com repetição: Osmar, Maria, Carlos, Maria, Fernanda, Fernanda, Osmar
Sem repetições: Osmar, Maria, Carlos, Fernanda


Desafios, Exercícios e Algoritmos Resolvidos de JavaScript

Veja mais Dicas e truques de JavaScript

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

Anúncio Patrocinado
Chat de Sexo - Site para adultso - Maiores de 18 anos. Converse com pessoas de todo o Brasil, de forma discreta e anônima


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