Advertisement
Guest User

Untitled

a guest
Mar 21st, 2019
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.29 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Threading.Tasks;
  9. using System.Windows.Forms;
  10.  
  11. namespace Pilka
  12. {
  13. public partial class Form1 : Form
  14. {
  15. private int szerokosc_pilki= 155;
  16. private int wysokosc_pilki = 155;
  17.  
  18. private int pozycja_pilki_x = 0;
  19. private int pozycja_pilki_y = 0;
  20.  
  21. private int predkosc_pilki_x = 5; //przesuniecie w pixelach
  22. private int predkosc_pilki_y = 5;
  23.  
  24. public Form1()
  25. {
  26. InitializeComponent();
  27.  
  28. this.SetStyle(ControlStyles.OptimizedDoubleBuffer |
  29. ControlStyles.AllPaintingInWmPaint |
  30. ControlStyles.UserPaint,
  31. true);
  32.  
  33. this.UpdateStyles();
  34. }
  35.  
  36. private void Form1_Load(object sender, EventArgs e)
  37. {
  38.  
  39. }
  40.  
  41. private void Narysuj_kolo(object sender, PaintEventArgs e)
  42. {
  43. e.Graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; //metoda wygładzająca krawędzie piłki
  44.  
  45. e.Graphics.Clear(this.BackColor);
  46.  
  47. e.Graphics.FillEllipse(Brushes.DarkRed, pozycja_pilki_x, pozycja_pilki_y, szerokosc_pilki, wysokosc_pilki); //metoda tworząca piłkę
  48.  
  49. e.Graphics.DrawEllipse(Pens.Black, pozycja_pilki_x, pozycja_pilki_y, szerokosc_pilki, wysokosc_pilki); // tworzy krawędzie piłki
  50.  
  51.  
  52. }
  53.  
  54. private void Przesun_pilke(object sender, EventArgs e)
  55. {
  56. // aktualizuje pozycje
  57. pozycja_pilki_x += predkosc_pilki_x;
  58.  
  59. // sprawdza by piłka nie wyszła poza okno
  60. if ( pozycja_pilki_x < 0 || pozycja_pilki_x + szerokosc_pilki > this.ClientSize.Width)
  61. {
  62. predkosc_pilki_x = -predkosc_pilki_x;
  63. }
  64.  
  65.  
  66. pozycja_pilki_y += predkosc_pilki_y;
  67.  
  68. if (pozycja_pilki_y < 0 || pozycja_pilki_y + wysokosc_pilki > this.ClientSize.Height)
  69. {
  70. predkosc_pilki_y = -predkosc_pilki_y;
  71. }
  72.  
  73.  
  74.  
  75. // zaktualizuj rysunek piłki
  76. this.Refresh(); // aktualizuje paramety metody rysujacej kolo
  77.  
  78. }
  79. }
  80. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement