Post: [Componente Visuais] Trabalhando com Hexadecimal no Delphi

Alessandro Medeiros

Fala ai Radizeiros e Radizeiras, tudo bem com vocês?

Um dos grandes mistérios ao criar um layout em uma ferramenta gráfica, como por exemplo o Photoshop, é as cores, pegar seus códigos hexadecimais, RGB e trazer para dentro do Delphi se torna as vezes uma grande dor de cabeça que muitos de nós programadores Delphi acabamos desistindo, e deixamos de melhorar o visual de nosso software.

Por este motivo resolvi lhe passar o pulo do gato para resolver esse problema.

O real cenário

Sabemos que na VCL as cores vem iniciada com $00 e no FMX, as cores vem iniciadas com #FF antes do código das cores, desta forma a mesma recebe a cor do código determinado.

Num formulário possui um panel, nesse panel temos a propriedade color.

Nesta propriedade color do panel irá receber os caracteres hexadecimal da paleta de cores do Photoshop:

Colocamos os caracteres na propriedade color da panel, e nos deparamos com um erro.

Assim também se colocarmos o #FF antes do código como dito anteriormente, também irá gerar o erro.

Essa é a mensagem de erro:

Mas e agora o que devo fazer

Na VCL em vez de usarmos o #FF devemos usar o $00 antes do código hexadecimal que copiamos do Photoshop.

Desta forma o Delphi irá aceitar o código hexadecimal na propriedade color do componente:

Não resultando em erro e o componente recebe a cor:

Mas pera ai, perfeitamente nada, nós não pegamos o código hexadecimal do azul no Photoshop, por que  está aparecendo outra cor?

Tudo errado, o que devo fazer?

Agora que vem a dica matadora para que você possa pegar informações de seu layout e importar para o Delphi.

Você viu que colocamos o código, usamos as iniciais $00 para a VCL e mesmo assim a cor veio diferente do que definimos, é neste momento que nós programadores começamos a nos descabelar sem compreender o por que da cor não está seguindo o padrão do seu código.

O Delphi interpreta as cores do padrão RGB de trás para frente…

 

Isso mesmo, ele interpreta como BGR…

O que devemos fazer é só pegar de trás para frente os códigos das cores de dois em dois, ficando desta forma.

No Photshop:

678dfe

No Delphi VCL:

$00fe8d67

No Delphi FMX:

#FFfe8d67

Percebeu, o código foi invertido, porem de dois em dois caracteres

Olha só como ficou agora em nosso componente:

Prontinho, agora temos aquele azul que desenhamos no Photoshop.

Resumo

Pegamos o código hexadecimal do Photoshop e colocamos na propriedade color do componente panel os caracteres $00 antes do código hexadecimal que copiamos e alteramos esse código, pegando de trás para frente de dois em dois, os dois últimos jogamos para depois do $00, depois pegamos os dois últimos novamente e colocamos após os dois últimos anteriores.

Desta forma você pode pegar qualquer valor hexadecimal de qualquer ferramenta de gráfica e importar para o Delphi, sem medo…

E caso você tenha interesse de conhecer mais sobre Aplicar Design Criativo no Delphi acesse o nosso portal do CLUBE DE PROGRAMADORES EM DELPHI, onde você não terá só conteúdos relacionados ao Design , mas uma quantidade enorme de conteúdos que poderá lhe ajudar muito no seu dia a dia, é uma verdadeira NETFLIX para os programadores Delphi.

CLIQUE AQUI E SAIBA MAIS SOBRE O CLUBE DOS PROGRAMADORES DELPHI


Faça sua busca

CATEGORIAS

POSTS RECENTES

E caso você tem interesse de conhecer mais sobre [Componente Visuais] Trabalhando com Hexadecimal no Delphi, acesse o nosso portal do CLUBE DE PROGRAMADORES EM DELPHI
Você não terá só conteúdos relacionados ao [Componente Visuais] Trabalhando com Hexadecimal no Delphi, mas uma quantidade enorme de conteúdos que poderá lhe ajudar muito no seu dia a dia, é uma verdadeira NETFLIX para os programadores Delphi.
Gostou?
Compartilhe:

Embarque no foguete com milhares de devs para aprender desenvolvimento, evoluir de forma contínua e se manter relevante no mercado.

Dúvidas
Cadastre-se em nossa lista

Para ter acesso em primeira mão, a tudo que acontece na Academia do Código, basta se cadastrar em nossa lista

Grupo Thulio Bittencourt | Academia do Código

#FaçaPartedaHistória

Copyright © 2024 – Todos os direitos reservados