Caption desaparece no PageControl
Pessoal, estou com um problema que parece ser simples, mas tem dado-me dor de cabeça, tenho um tela onde tem no fundo um image que carrega uma imagem e em cima deste image tem um Pagecontrol com várias abas, pois bem quando compilo a tela os caption de cada TabSheet fica invisivel, já tentei quase tudo e não consegui resolver se alguém puder me ajudar agradeço desde já.
Utilizo Delphi 7+Firebird 2.0
abraço
Utilizo Delphi 7+Firebird 2.0
abraço
Estanieski
Curtidas 0
Respostas
Marcosrocha
04/05/2009
1º Está utilizando arquivos ´.manifest´?
2º Seu PageControl está com a propriedade OwnerDraw = True?
2º Seu PageControl está com a propriedade OwnerDraw = True?
GOSTEI 0
.lg.
04/05/2009
também estou tendo o mesmo problema no D2009. Crio minha aplicação com pagecontrol e as abas estão ficando sem o caption.
MarcosRocha,
1. Aonde eu confirmo se estou ou não usando este arquivo!?
2. Sim, a propriedade ´OwnerDraw´ está True.
Att,
.lg.
MarcosRocha,
1. Aonde eu confirmo se estou ou não usando este arquivo!?
2. Sim, a propriedade ´OwnerDraw´ está True.
Att,
.lg.
GOSTEI 0
Marcosrocha
04/05/2009
Arquivos manifest ficam na mesma pasta do executável, com o mesmo nome mas com extensão .manifest
São arquivos de configurações de como a API do Windows vai tratar seus componentes visuais.
A propriedade OwnerDraw do PageControl (como o próprio nome ja diz, desenho pelo criador) significa que quem criou o PageControl é responsável por desenhar o caption de suas abas, ou seja, os captions têm de ser escritos manualmente via Canvas. Se você não estiver fazendo desenhos em Canvas no PageControl, desative a propriedade OwnerDraw setando-a para ´False´
São arquivos de configurações de como a API do Windows vai tratar seus componentes visuais.
A propriedade OwnerDraw do PageControl (como o próprio nome ja diz, desenho pelo criador) significa que quem criou o PageControl é responsável por desenhar o caption de suas abas, ou seja, os captions têm de ser escritos manualmente via Canvas. Se você não estiver fazendo desenhos em Canvas no PageControl, desative a propriedade OwnerDraw setando-a para ´False´
GOSTEI 0
.lg.
04/05/2009
Aproveitar que o assunto é sobre o PageControl...
É coerente. Mas se for assim ferro então! Porque cade a produtividade disso!? Entende!?
Outro problema:
Se eu deixo o ´[b:4456e60966]OwnerDraw[/b:4456e60966]´ False, o caption aparece, porém, meu programa aparece a PageControl toda com a cor branca sem os contorno nas bordas que o windows faz. Fica as abas tudo Quadradas.
Como eu concerto esse problema da cor e das bordas!? Retratando pelo que você falou:
quando eu deixo a opção para True, o PageControl fica com a cor normal do windows e com as bordas arredondadas. Porem quando eu seto para False (ou seja, eu nem preciso mecher no canvas, pois a aplicação se encarrega de ´desenhar´), o pageControl perde a cor indo pra branco e perde o contorno deixando todo o pageControl com bordas quadrado perfeito.
Como que resolve?
Att,
.lg.
A propriedade OwnerDraw do PageControl (como o próprio nome ja diz, desenho pelo criador) significa que quem criou o PageControl é responsável por desenhar o caption de suas abas, ou seja, os captions têm de ser escritos manualmente via Canvas.
É coerente. Mas se for assim ferro então! Porque cade a produtividade disso!? Entende!?
Outro problema:
Se eu deixo o ´[b:4456e60966]OwnerDraw[/b:4456e60966]´ False, o caption aparece, porém, meu programa aparece a PageControl toda com a cor branca sem os contorno nas bordas que o windows faz. Fica as abas tudo Quadradas.
Como eu concerto esse problema da cor e das bordas!? Retratando pelo que você falou:
significa que quem criou o PageControl é responsável por desenhar
quando eu deixo a opção para True, o PageControl fica com a cor normal do windows e com as bordas arredondadas. Porem quando eu seto para False (ou seja, eu nem preciso mecher no canvas, pois a aplicação se encarrega de ´desenhar´), o pageControl perde a cor indo pra branco e perde o contorno deixando todo o pageControl com bordas quadrado perfeito.
Como que resolve?
Att,
.lg.
GOSTEI 0
Woinch
04/05/2009
Quais problemas o arquivo ´.manifest´ pode apresentar nesse caso como mencionado pelo colega MarcosRocha?
Obrigado.
Obrigado.
GOSTEI 0
Marcosrocha
04/05/2009
O arquivo manifest oferece instruções de como o sistema operacional deve interagir com a aplicação. Existe um componente na paleta ´Win32´ chamado XPManifest que, se colocado no DataModule, fornece uma série de mudanças no visual do seu sistema. De início, todos os BitBtn, Button e SpeedButton irão possuir cantos arredondados assim como o WindowsXP. Os TabSheets do PageControl também tomarão o padrão do seu Windows (porém por se tratar de manifest o PageControl fica Branco que é o padrão do Windows). Os Edits ficarão mais suaves e CheckBoxes, RadioButtons ganharão um ´look´ mais elegante.
Enfim... utilizando o XPManifest (ou arquivo manifest http://imasters.uol.com.br/artigo/3294/delphi/sua_aplicacao_delphi_com_aparencia_do_windows_xp/) sua aplicação ganha uma nova cara estilo WindowsXP.
Mais uma coisa: O uso desta técnica no Delphi 6 pode acarretar em alguns bugs como o foco sumir às vezes quando se dá um tab e entrar em um CheckBox ou RadioButton. Delphi 7 Normal.
Enfim... utilizando o XPManifest (ou arquivo manifest http://imasters.uol.com.br/artigo/3294/delphi/sua_aplicacao_delphi_com_aparencia_do_windows_xp/) sua aplicação ganha uma nova cara estilo WindowsXP.
Mais uma coisa: O uso desta técnica no Delphi 6 pode acarretar em alguns bugs como o foco sumir às vezes quando se dá um tab e entrar em um CheckBox ou RadioButton. Delphi 7 Normal.
GOSTEI 0
.lg.
04/05/2009
É interessante, porém...
Testei, e não deu certo. Usei o [b:dce6faa762]XPManifest[/b:dce6faa762] direto no form principal e num [b:dce6faa762]dataModule[/b:dce6faa762] como você disse.
Tentei utilizar o arquivo .manifest como no link que você postou. Também não deu certo.
Estou usando o D2009.
Att,
.lg.
Testei, e não deu certo. Usei o [b:dce6faa762]XPManifest[/b:dce6faa762] direto no form principal e num [b:dce6faa762]dataModule[/b:dce6faa762] como você disse.
Tentei utilizar o arquivo .manifest como no link que você postou. Também não deu certo.
Estou usando o D2009.
Att,
.lg.
GOSTEI 0
Woinch
04/05/2009
Eu utilizo no form principal.
Fiz minha pergunta porque estou tendo um problema com DBNavigator que os botões ficam se ´sobreescrevendo´ ai fica tipo um botão por cima do outro. Achei que pudesse ser algum bug do XPManifest.
Tens algum conhecimento em relação a isso?
Fiz minha pergunta porque estou tendo um problema com DBNavigator que os botões ficam se ´sobreescrevendo´ ai fica tipo um botão por cima do outro. Achei que pudesse ser algum bug do XPManifest.
Tens algum conhecimento em relação a isso?
GOSTEI 0
Marcosrocha
04/05/2009
Estou usando o D2009.
No D2009 o você pode perceber que a aplicação já vem ´estilizada´ a inclusão do XPManifest ou o arquivo .manifest não vai (não deveria) afetar sua aplicação.Achei que pudesse ser algum bug do XPManifest.
Tens algum conhecimento em relação a isso?
Infelizmente desconheço bug do tipo.GOSTEI 0
.lg.
04/05/2009
No D2009 o você pode perceber que a aplicação já vem ´estilizada´ a inclusão do XPManifest ou o arquivo .manifest não vai (não deveria) afetar sua aplicação.
Realmente. O PageControl ja vem todo quadriculado e esbranquissado.
:lol:
Agora sem zuera...
Deve ser o PageControl que veio com meu delphi, pois quando eu adiciono no form ele n vem ´estilizada´ ele vem ´destilizada´.
:cry:
´i´m sad. I think there will be nothing else to do on this component.´
GOSTEI 0
.lg.
04/05/2009
Ninguem mais?
My last try.
My last try.
GOSTEI 0
Fgomes1983
04/05/2009
Amigo..
Sei que faz tempo mas eu estava com o mesmo problema que você.
A informação que eu encontrei nessa página resolveu meu problema...
Acho que resolve o seu tbm...
http://www.rau-tu.unicamp.br/linguagens/read.php?tid=10&qid=3341&key=
Abraços e boa sorte...
Sei que faz tempo mas eu estava com o mesmo problema que você.
A informação que eu encontrei nessa página resolveu meu problema...
Acho que resolve o seu tbm...
http://www.rau-tu.unicamp.br/linguagens/read.php?tid=10&qid=3341&key=
Abraços e boa sorte...
GOSTEI 0