PageControl não encontra Parent
Olá, senhores.
Tenho um formulário com um PageControl que ao ser fechado - seja no IDE, seja em RunTime - o Delphi informa que [u:1aa0c4de74]ele não tem pai[/u:1aa0c4de74]: ´Control ´Pgs´ has no parent windows.´ .
Daí, não consigo mais fechar o Delphi e a ´bendita´ mensagem ´Access violation at address xxxx in module ´Vcl70.bpl´. Read of address yyyy´ fica aparecendo o tempo todo.
Logicamente, não sabendo do pai da dita cuja, quis chamá-la de filha...
Bem, antes que bloqueiem o tópico, deixem me controlar.
O controle, antes, era um PageControl customizado, mas achei que havia algum bug no compenente e, via porta dos fundos (leia-se editar o .dfm e o .pas no braço) modifiquei as declarações para o TPageCOntrol padrão da VCL.
O projeto abriu sem nenhum problema. Cuidei das propriedades não compatíveis, mas, para minha surpresa, quando fui fechar o formulário lá estava o erro, novamente.
Verifiquei que se abro o formulário e o fecho sem alterações, não há mensagens ou problemas. O bug surge quando salvo modificações.
Além disso, já montei e desmontei este tal formulário umas cinco vezes e percebi que o erro aparece quando troco um TFrame por outro. Mas o comportamento é incrivel:[list:1aa0c4de74][*:1aa0c4de74]Coloco o TFrame inicial e troco por um outro ´herdado´ deste: dá erro!
[*:1aa0c4de74]Crio um novo TForm, tudo igual, e coloco ´de primeira´ a segunda versão do TFrame: NÃO DÁ ERRO !!
[*:1aa0c4de74]Conclusões....
Além da óbvia que é o ´duende do micro´ estar tentando me ´ferrar´...[/list:u:1aa0c4de74][list=a:1aa0c4de74][*:1aa0c4de74]há algum problema com a manutenção que o IDE dá nestas modificações;
[*:1aa0c4de74]há um bug relacionado com herança de TFrames;
[*:1aa0c4de74]há um bug relacionado com TFrames;
[*:1aa0c4de74]eu não entendo ´p´ nenhuma do que estou fazendo (o que é o mais triste).[/list:o:1aa0c4de74]
Eu não posso ficar recriando o formulário toda vez que o erro aparece. Minhas TFrames têm código embutido para tratar um TADOQuery, seus campos calculados e utilitários de validação...
A segunda TFrame, que é herdada da primeira (File | New | Other ...), tem um TDBGrid que usa o TADOQuery e já formata o Grid de forma a ser usado em vários outros formulários (discuto isso no tópico [url]http://delphiforum.icft.com.br/forum/viewtopic.php?t=36180[/url]).
E se todos derem problema? ...
Senhores, isso é uma emergência! Alguém pode me ajudar :?::?::?:
Tenho um formulário com um PageControl que ao ser fechado - seja no IDE, seja em RunTime - o Delphi informa que [u:1aa0c4de74]ele não tem pai[/u:1aa0c4de74]: ´Control ´Pgs´ has no parent windows.´ .
Daí, não consigo mais fechar o Delphi e a ´bendita´ mensagem ´Access violation at address xxxx in module ´Vcl70.bpl´. Read of address yyyy´ fica aparecendo o tempo todo.
Logicamente, não sabendo do pai da dita cuja, quis chamá-la de filha...
Bem, antes que bloqueiem o tópico, deixem me controlar.
O controle, antes, era um PageControl customizado, mas achei que havia algum bug no compenente e, via porta dos fundos (leia-se editar o .dfm e o .pas no braço) modifiquei as declarações para o TPageCOntrol padrão da VCL.
O projeto abriu sem nenhum problema. Cuidei das propriedades não compatíveis, mas, para minha surpresa, quando fui fechar o formulário lá estava o erro, novamente.
Verifiquei que se abro o formulário e o fecho sem alterações, não há mensagens ou problemas. O bug surge quando salvo modificações.
Além disso, já montei e desmontei este tal formulário umas cinco vezes e percebi que o erro aparece quando troco um TFrame por outro. Mas o comportamento é incrivel:[list:1aa0c4de74][*:1aa0c4de74]Coloco o TFrame inicial e troco por um outro ´herdado´ deste: dá erro!
[*:1aa0c4de74]Crio um novo TForm, tudo igual, e coloco ´de primeira´ a segunda versão do TFrame: NÃO DÁ ERRO !!
[*:1aa0c4de74]Conclusões....
Além da óbvia que é o ´duende do micro´ estar tentando me ´ferrar´...[/list:u:1aa0c4de74][list=a:1aa0c4de74][*:1aa0c4de74]há algum problema com a manutenção que o IDE dá nestas modificações;
[*:1aa0c4de74]há um bug relacionado com herança de TFrames;
[*:1aa0c4de74]há um bug relacionado com TFrames;
[*:1aa0c4de74]eu não entendo ´p´ nenhuma do que estou fazendo (o que é o mais triste).[/list:o:1aa0c4de74]
Eu não posso ficar recriando o formulário toda vez que o erro aparece. Minhas TFrames têm código embutido para tratar um TADOQuery, seus campos calculados e utilitários de validação...
A segunda TFrame, que é herdada da primeira (File | New | Other ...), tem um TDBGrid que usa o TADOQuery e já formata o Grid de forma a ser usado em vários outros formulários (discuto isso no tópico [url]http://delphiforum.icft.com.br/forum/viewtopic.php?t=36180[/url]).
E se todos derem problema? ...
Senhores, isso é uma emergência! Alguém pode me ajudar :?::?::?:
Ildefonso
Curtidas 0