Casa
Top.Mail.Ru Yandeks.Metrika
Fórum: "Principal";
Arquivo atual: 2002.01.08;
Download: [xml.tar.bz2];

Para baixo

Por que esse código simples não funciona ... Encontre agências semelhantes


Kost   (2001-12-15 13:06) [0]

Existe um formulário TForm1. BitBtn1 "botão experimental" é colocado sobre ele.
Há um desejo, clicando em outro botão - Button1 para fazer o seguinte:
- desenhar uma imagem BitBtn1 na tela do bitmap usando o PaintTo
- saída do bitmap recebido para a tela do formulário

NÃO RECEBIDO! BitBtn1 não é desenhado no bitmap! PORQUE ONDE ESTOU DIREITO?

procedimento TForm1.FormCreate (Sender: TObject);
começar
// Cria um bitmap
bmp: = TBitmap.Create;
bmp.Width: = 150;
bmp.Altura: = 150;
end;

procedimento TForm1.Button1Click (Sender: TObject);
começar
// Quando você clicar no botão, desenhe BitBtn1 na tela do bitmap
BitBtn1.PaintTo (bmp.Canvas.Handle, 0, 0);
Invalidar // Para forçar o formulário a ser redesenhado
end;

procedimento TForm1.FormPaint (Sender: TObject);
começar
// Imprime o formulário de bitmap para a tela
Canvas.Draw (0,0, bmp);
end;



Song   (2001-12-15 22:18) [1]

Por que você:
1) desenhar tela com o PaintTo? Você pode definir diretamente o glifo através de Canvas.Draw - isso será mais correto.
2) redesenha o formulário? você só precisa redesenhar o controle que você atualizou, ou seja,
ou assim:
Com BitBtn1 Do
Começar
UpDate
Invalidar
End;

quer apenas BitBtn1.RePaint;



Kost   (2001-12-16 12:25) [2]

Este exemplo eu queria mostrar que no bitmap (mais precisamente, na tela do bitmap) é impossível desenhar TBitBtn (ou TButton) usando PaintTo.
WinControl "s tem essa função de membro
WinControl.PaintTo (DC: HDC; X, Y: inteiro)
com a ajuda de que, supostamente, você pode desenhar uma imagem do WinControl em qualquer tela. Eu tentei desenhar uma imagem de botão (TBitBtn) na tela do bitmap. Não dá certo. Realizada pesquisa com outros WinControls, verifica-se, por exemplo, com TPanel.T a imagem do painel pode ser transferida para o bitmap usando PaintTo. TBitBtn imagem, repito, por algum motivo esta função não é desenhada para o bitmap.
Ou seja Esta função para diferentes WinControls funciona como Deus coloca na alma.



Song   (2001-12-16 22:31) [3]

Eu acho que todo o problema não está no PaintTo, mas em DC (tipo HDC), não é corretamente indicado no caso de TBitBtn, ou seja, o sistema retorna um identificador incorreto para a tela do botão: ((



Страницы: 1 filial inteira

Fórum: "Principal";
Arquivo atual: 2002.01.08;
Download: [xml.tar.bz2];

em cima









Memória: 0.56 MB
Hora: 0.033 c
1-22105
Gonza
2001-12-19 16:35
2002.01.08
Aplicação MDI


1-22101
DenKop
2001-12-18 14:38
2002.01.08
Criando Ajuda s


1-22010
dorixe
2001-12-17 19:21
2002.01.08
treeview no dblclick


1-22113
Yuraz
2001-12-19 20:25
2002.01.08
Irmãos porque


14-22370
Zergg
2001-11-08 16:30
2002.01.08
Sobre a DLL de carregamento estático do CBuilder





afrikaans albanês Arabic armênio azerbaijano basco belarusian Bulgarian catalão Chinês simplificado) Chinês tradicional) croata checo dinamarquês Dutch Inglês estoniano filipino Finnish French
Galego georgiano German grego crioulo haitiano hebraico hindi húngaro islandês Indonesian irlandês Italian Japanese Korean letão lituano macedónio Malay maltês Norwegian
persa polonês Portuguese romeno Russa sérvio Slovak esloveno espanhol swahili sueco tailandês turco ucraniano urdu vietnamita galês ídiche bengali bósnio
cebuano esperanto gujarati hausa hmong igbo javanês kannada khmer lao latino maori marata mongol Nepali punjabi somali tâmil telugu yoruba
zulu
Английский francês Alemão Italiano Португальский russo Espanhol