VidU Posted April 28, 2008 at 07:15 PM Report Share #182074 Posted April 28, 2008 at 07:15 PM ora bem eu simplesmente queria saber o porque de o meu evento: private void Form1_Paint(object sender, PaintEventArgs e) { } estar sempre em utilizaçao, imaginemos que eu peço para ele me desenhar uma linha, se eu fizer isso no meu evento ele vai estar constantemente a desenhar essa linha. mas eu apenas quero que ele desenhe qd for chamado.. cumps 🙂 Link to comment Share on other sites More sharing options...
skm Posted April 29, 2008 at 01:51 PM Report Share #182290 Posted April 29, 2008 at 01:51 PM O evento paint é chamado sempre que a uma acção no form. Por exemplo sempre que o rato lpassa por cima do form, etc. Por isso é que aparentemente esta sempre a desenhar a linha. Se queres que desenhe so uma vez coloca uma flag "There are two kinds of programmers. Those who write something to get the work done and those who want to write good code."João BrandãoWebsite e blog: http://jamab.blogspot.com/ Link to comment Share on other sites More sharing options...
VidU Posted April 29, 2008 at 06:55 PM Author Report Share #182396 Posted April 29, 2008 at 06:55 PM sim era isso que eu desconhecia, quando é que ele era executado, se era por um tempo definido, ou entao qual a interaçao que necessitava ter.. Ele é executado sempre que o rato passa por cima, ou ha outras formas de o executar? sem o chamar directamente no codigo. Link to comment Share on other sites More sharing options...
skm Posted April 30, 2008 at 09:58 AM Report Share #182579 Posted April 30, 2008 at 09:58 AM Existem varias formas de o executar. Tudo que implique um pain ou repaint no form. Um simples refresh ao form, etc. "There are two kinds of programmers. Those who write something to get the work done and those who want to write good code."João BrandãoWebsite e blog: http://jamab.blogspot.com/ Link to comment Share on other sites More sharing options...
VidU Posted April 30, 2008 at 10:15 AM Author Report Share #182584 Posted April 30, 2008 at 10:15 AM So mais uma duvida, exite alguma funçao predefinida que me permita desenhar a mesma imagem varias vezes no form, sem "substituir" a anterior? por exemplo: public void Draww(Graphics g) { int x=10; int y=10; SolidBrush castanho = new SolidBrush(Color.Brown); Rectangle rect = new Rectangle(x, y, 65, 70); g.FillRectangle(castanho, rect); } Ao chamar esta funçao no evento Paint, ele vai me desenhar um rectangulo castanho nas coordenadas 10,10, mas se eu voltar a chamar a funçao e se x=20 e y=20, o rectangulo das coordenadas 10,10 ira desaparecer, e aparecer este novo nas cordenadas 20,20. Portanto o que eu pretendia era uma funçao que me permitisse ter os dois rectangulos desenhados, ou seja, sempre que queira desenhar um rectangulo, ele acrescentar um rectangulo ao formulario inves de o substituir. Cumps 👍 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now