Artigo Clube Delphi Edição 2 - VCL
Artigo da Revista Clube Delphi Edição 2.
Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML.
VCL
Estamos aqui novamente e com a mais comentada e polêmica das seções de nosso jornal. Para quem perdeu, a edição anterior falou sobre os bugs de banco de dados, corrigidos pelo update packs 4.01 e 4.02 Dedicamos esta edição a VCL, ou seja, o conjunto de componentes do Delphi.São os bugs de menor risco, mas que podem comprometer a funcionalidade do sistema se não prevenidos. Em breve colocaremos essa edição em nosso site., para que nossos leitores possam contribuir e interagir com estes problemas.
Aproveitando o caminhar do assunto, lembramos que o update Pack 4.03 já está disponível no site do Borland (WWW.borland.com) e o recomendamos para quem tiver a oportunidade de baixá-lo.
Abaixo segue a lista de nossos indesejáveis e inevitáveis bugs, separados pela palheta em que os componentes se encontram:
Palheta Aditional:
TSpeedButton: Nosso pequeno botão apresenta um problema simples no método BeginDrag. A o chamar speedButton1.BeginDrag(FALSE) no evento OnMouseDown, o botão continua pressionado, mesmo quando o usuário soltar o botão do mouse.
TcheckListBox: Neste objeto quem aparece é o método Exchange. Para quem não conhece, o método Exchange troca dois itens de um listbox de posição. Só que ao utilizar este método, o Delphi não salva os valores dos checkbox’s forem trocados de posição, referentes.O u seja se um algum dos checkbox’s forem trocados de posição, eles irão aparecer desmarcados.Tente:checklistbox1.items.exchange(1,2);
TControlBar: Os objetos contidos
Palheta Dialogs:
TPrinterDialog: Este objeto sempre exibe a impressora default( mesmo alterando a propriedade Printer.PrinterIndex);
Nota: Utilize Printer.GetPrinter e Printer.SetPrinter, passando 0 para o parâmetro hDevMode para resolver este problema.
Palheta Standard:
TCheckBox: Apropriedade Color deste objeto não aceita o valor clWindow. Ao tentar passar este valor, a propriedade ParentColor é automaticamente setado para FALSE.
TComboBox: O evento OnChange não funciona de forma apropriada. Ele é disparado correntamente quando o usuário altera sua propriedade text, mas não quando programa o faz.
Este objeto também apresenta um bug na propriedade Focused, que que sempre retorna FALSE, mesmo que o controle seja do TComboBox.
TEdit: Apropriedade Height deste objeto não funciona correntamente . Por exemplo, coloque um Tedit em seu form, altere sua propriedade Height para algum valor maior que o Default e execute a aplicação, Repare que este sempre aparece com a altura default.
TListBox: Agora sim um bug da form a que eu gosto:Adicione um TListBox em sua aplicação e defina a propriedade Columms para 2. Agora defina a propriedade Width também para 2.0 Delphi simplesmente cai.Isto pode acontecer quando usarmos um TListBox em conjunto com um TSplitter, por exemplo.
TMainMenu: Um grupo de menus selecionados para trabalhar como RadioGroup não funcionam em tempo nde execução, o usuário pode selecionar vários item ao ao mesmo tempo, como um checkbox.
Palheta Win32:
TCoolBar:É gerado um Access Violation ao tentar deletar este objeto do form com o Bands Editor aberto.Por exemplo:
Inclua um TEdit no TCoolbar;
Delete o TCoolBar e a mensagem de erro será gerada;
Outro problema encontrado neste objeto foi na propriedade visible, mesmo quando visible é alterado.
TImageList: Ao selecionar um grupo de imagens neste objeto, e tentar arrastá-las para fora da janela, um Acess Violation é gerado.
Alista de bugs continua, mas não vamos publicá-las nesta edição.Repare que os problemas encontrados são de pouca agravância , e podem ser resolvidos evitando seguir os passos descritos acima. Caso conheça algum bug e deseja publicá-lo em nosso jornal, basta enviar um email para admin@clubededelphi.com.br
Artigos relacionados
-
Artigo
-
Artigo
-
Artigo
-
Artigo
-
Artigo