Dúvida com Criação de componente
Boa tarde, estou com uma dúvida em relação a criação de componentes.
Imagine que criei determinado componente (Não VISUAL), quero que quando esteja no delphi, ao clicar duas vezes sobre o componente seja disparado determinado método (no caso mostrar um frm).
Como posso fazer isso?
Imagine que criei determinado componente (Não VISUAL), quero que quando esteja no delphi, ao clicar duas vezes sobre o componente seja disparado determinado método (no caso mostrar um frm).
Como posso fazer isso?
Diegotiemann
Curtidas 0
Respostas
.lg.
15/10/2009
Fui no componente TMainMenu para ver se entendia como funciona este disparo de metodo no duplo click no componente.
Infelizmente não achei nada. Nem no componente TMenu (que o TMainMenu herda dele não achei nada a respeito. Estou vendo em outros componentes pra ver se acho alguma coisa que explique isso.
Continuo na procura, se achar alguma coisa posto aqui.
Infelizmente não achei nada. Nem no componente TMenu (que o TMainMenu herda dele não achei nada a respeito. Estou vendo em outros componentes pra ver se acho alguma coisa que explique isso.
Continuo na procura, se achar alguma coisa posto aqui.
GOSTEI 0
Diegotiemann
15/10/2009
Eu também já procurei em alguns componentes que eu sei que fazem isso (TUserControl, Rdprint), mas não achei nada. Por isso resolvi postar aqui.
GOSTEI 0
Knight_of_wine
15/10/2009
Eu tenho a apostila da CodeGear de criação de componentes.
Vou dar um refrescada lá quando chegar em casa e posto aqui se achar algo.
Vou dar um refrescada lá quando chegar em casa e posto aqui se achar algo.
GOSTEI 0
Diegotiemann
15/10/2009
Vou aproveitar esse tópico pra outra dúvida.
Vamos supor que eu preciso criar um componente que herde de TPanel e que tenha um botão dentro dele.
Beleza, consegui criar o tbitBtn dentro do panel.
Mas não faço nem idéia de como definir um gliph padrão para o botão. (Sem usar loadFromFile)
Vamos supor que eu preciso criar um componente que herde de TPanel e que tenha um botão dentro dele.
Beleza, consegui criar o tbitBtn dentro do panel.
Mas não faço nem idéia de como definir um gliph padrão para o botão. (Sem usar loadFromFile)
GOSTEI 0
Osocram
15/10/2009
Olha isso que vc quer é conhecido como Editor de Componentes, da uma pesquisada sobre isso no google que vc encontrar bastante coisas, até aqui no forum mesmo tem.
Não é dificil, é cheio de detalhes, depois que acostumar vai ver que é simples.
Dae vc vai ter que aumentar o menu do clique com botão direito do seu componente e deixar uma ação como padrão, que será disparado ao dar 2 cliques.
Sobre o outro problema que comentou... infelizmente tem que ser tudo no braço, o ou seja vai ter que criar um arquivo .res para guardar a imagem que quer, e adicioná-lo no via progração.
Não é dificil, é cheio de detalhes, depois que acostumar vai ver que é simples.
Dae vc vai ter que aumentar o menu do clique com botão direito do seu componente e deixar uma ação como padrão, que será disparado ao dar 2 cliques.
Sobre o outro problema que comentou... infelizmente tem que ser tudo no braço, o ou seja vai ter que criar um arquivo .res para guardar a imagem que quer, e adicioná-lo no via progração.
GOSTEI 0
Diegotiemann
15/10/2009
A questão das imagens no botão eu consegui fazer usando o .res, só faltam uns pequenos detalhes, mas coisa simples.
Quanto ao clique sobre o componente ainda não pesquisei sobre editor de componentes.
Quanto ao clique sobre o componente ainda não pesquisei sobre editor de componentes.
GOSTEI 0
Diegotiemann
15/10/2009
Olha só criei o componente com uma imagem padrão, para isso criei o RES
e adicionei no código da BPL da seguinte maneira:
Em tempo de projeto funciona que é uma beleza, mas quando compilo o program que usa o novo componente dá o seguinte erro:
OBS: lupa é o nome de um dos recursos que uso.
Dai se eu adicionar a diretiva
no código do projeto funciona perfeitamente.
Queria saber como fazer pra não ter que adicionar essa diretiva nos projetos que vão usar o componente.
e adicionei no código da BPL da seguinte maneira:
{$R imagens_btn.RES}Em tempo de projeto funciona que é uma beleza, mas quando compilo o program que usa o novo componente dá o seguinte erro:
raised exception class EResNotFound with message ´Resource lupa not found´.
OBS: lupa é o nome de um dos recursos que uso.
Dai se eu adicionar a diretiva
{$R imagens_btn.RES}no código do projeto funciona perfeitamente.
Queria saber como fazer pra não ter que adicionar essa diretiva nos projetos que vão usar o componente.
GOSTEI 0
Diegotiemann
15/10/2009
Já resolvi, bastou adicionar a diretiva
No create do componente (dentro da bpl) e remover do código da bpl e do projeto que usa o componente.
{$R imagens_btn.RES}No create do componente (dentro da bpl) e remover do código da bpl e do projeto que usa o componente.
GOSTEI 0