C#'ta Hareketli Top Yapmak

Bu programda from açıldığında timer yardımı ile radiobuutonun hareket ettiğini göreceğiz.

Bu programda from açıldığında timer yardımı ile radiobuutonun hareket ettiğini göreceğiz.

Formumuza 1 timer 1 de radiobuuton ekleyelim.

Kodlar aşağıdaki gibi;


using System;

using System.Drawing;

using System.Collections;

using System.ComponentModel;

using System.Windows.Forms;

using System.Data;



namespace HareketliTop

{

    public class Form1 : System.Windows.Forms.Form

    {

         private System.Windows.Forms.RadioButton radioButton1;

         private System.Windows.Forms.Timer timer1;

         private System.ComponentModel.IContainer components;



        public Form1()

        {

            InitializeComponent();

        }

        protected override void Dispose( bool disposing )

        {

            if( disposing )

            {

                if (components != null) 

                {

                    components.Dispose();

                }

            }

            base.Dispose( disposing );

        }

        #region Windows Form Designer generated code

        private void InitializeComponent()

        {

            this.components = new System.ComponentModel.Container();

            this.radioButton1 = new System.Windows.Forms.RadioButton();

            this.timer1 = new System.Windows.Forms.Timer(this.components);

            this.SuspendLayout();

            this.radioButton1.Location = new System.Drawing.Point(40, 48);

            this.radioButton1.Name = "radioButton1";

            this.radioButton1.Size = new System.Drawing.Size(104, 24);

            this.radioButton1.TabIndex = 0;

            this.radioButton1.Text = "radioButton1";

            this.radioButton1.CheckedChanged += new System.EventHandler(this.radioButton1_CheckedChanged);

            this.timer1.Tick += new System.EventHandler(this.timer1_Tick);

            this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);

            this.ClientSize = new System.Drawing.Size(292, 266);

            this.Controls.Add(this.radioButton1);

            this.Name = "Form1";

            this.Text = "Form1";

            this.Load += new System.EventHandler(this.Form1_Load);

            this.ResumeLayout(false);

  }

        #endregion

        [STAThread]

        static void Main() 

        {

            Application.Run(new Form1());

        }

  private void Form1_Load(object sender, System.EventArgs e)

  {

   radioButton1.Text = "";

   radioButton1.Width = 10;

   timer1.Interval = 50;

   timer1.Enabled = true;

  }

  

  int sx = 5, sy = 5;

  private void timer1_Tick(object sender, System.EventArgs e)

  {

   if (radioButton1.Top <= 0 || radioButton1.Bottom >= this.ClientSize.Height)

    //Formun üstüne veya altına ulaşıldı ise artımı ters çevir

    sy = -sy; //artış yönünü ters çevir

   if (radioButton1.Left <= 0 || radioButton1.Right >= this.ClientSize.Width)

    //Formun soluna veya sağına ulaşıldı ise artımı ters çevir.

    sx = -sx; //artış yönünü ters çevir

   radioButton1.Left += sx;

   radioButton1.Top += sy;

  }

  • Etiketler;
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

• 8 yıl önce
Çok teşekkürler bende ne zamandan beri bu şekilde form içerisinde serbest nesne hareketi nasıl olur diye düşünüyordum gerçekten çok teşekkür ederim.

Yukarı Git