欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#實現(xiàn)會移動的文字效果

 更新時間:2021年04月30日 11:54:18   作者:敲代碼兩年半的練習(xí)生  
這篇文章主要為大家詳細(xì)介紹了C#實現(xiàn)會移動的文字效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了C#實現(xiàn)會移動的文字效果的具體代碼,供大家參考,具體內(nèi)容如下

1 題目描述

(1)Form1窗體設(shè)計界面如下:

(2)窗體左側(cè)為一個靠左??康膒anel,其中包含一個label控件;
(3)初試狀態(tài)時,“水平移動”選中,當(dāng)用戶單擊“開始移動”按鈕時,label在panel中水平從左向右移動,單擊“暫停移動”按鈕時,label停在原位置不動;
(4)在label移動過程中,若用戶切換移動方式,則彈出對話框,提示先暫停移動;在label暫停移動時,用戶切換移動方式,label在原位置以新的移動方式進(jìn)行移動;

2 源碼詳解

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Csharp7_2
{
    public partial class Form1 : Form
    {
        static int x = 0;
        static int y = 0;
        static int flag = 0;
        static int v = 0;
        static int h = 0;
        public Form1()
        {
            InitializeComponent();
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            if (radioButton1.Checked && flag == 1)
            {
                if (label1.Location.X + label1.Size.Width >= (panel1.Location.X + panel1.Size.Width))
                {
                    v = 1;
                }
                if (label1.Location.X < panel1.Location.X)
                {
                    v = 0;
                }
                if (v == 0)
                {
                    x = 1;
                    y = 0;
                }
                if (v == 1)
                {
                    x = -1;
                    y = 0;
                }
            }

            if (radioButton2.Checked && flag == 1)
            {
                if (label1.Location.Y + label1.Size.Height >= (panel1.Location.Y + panel1.Size.Height))
                {
                    h = 1;
                }
                if (label1.Location.Y < panel1.Location.Y)
                {
                    h = 0;
                }
                if (h == 0)
                {
                    x = 0;
                    y = 1;
                }
                if (h == 1)
                {
                    x = 0;
                    y = -1;
                }
            }

            if (flag == 1)
            {
                Point p = new Point(label1.Location.X + x, label1.Location.Y + y);
                label1.Location = p;
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            flag = 1;
            timer1.Start();
        }

        private void button2_Click(object sender, EventArgs e)
        {
            flag = 0;
            timer1.Stop();
        }

        private void radioButton1_CheckedChanged(object sender, EventArgs e)
        {
            if (radioButton2.Checked == true && flag == 1)
            {
                flag = 0;
                radioButton2.Checked = true;
                radioButton1.Checked = false;
                MessageBox.Show("請先停止移動");
            }
        }

        private void radioButton2_CheckedChanged(object sender, EventArgs e)
        {
            if (radioButton1.Checked == true && flag == 1)
            {
                flag = 0;
                radioButton1.Checked = true;
                radioButton2.Checked = false;
                MessageBox.Show("請先停止移動");
            }
        }
    }
}

3 實現(xiàn)效果

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C#中數(shù)據(jù)的傳遞以及ToolStripProgressBar

    C#中數(shù)據(jù)的傳遞以及ToolStripProgressBar

    本文主要介紹了C#的數(shù)據(jù)傳遞方法以及ToolStripProgressBar進(jìn)度條的使用。希望對大家有所幫助,話不多說,請看下面代碼
    2016-11-11
  • Unity圖形學(xué)之ShaderLab入門基礎(chǔ)

    Unity圖形學(xué)之ShaderLab入門基礎(chǔ)

    Unity中所有Shader文件都通過一種陳述性語言進(jìn)行描述,稱為“ShaderLab”, 這篇文章主要介紹了Unity圖形學(xué)之ShaderLab入門基礎(chǔ),需要的朋友可以參考下
    2022-01-01
  • 基于C#的圖表控件庫 ScottPlot編譯visual studio 2022

    基于C#的圖表控件庫 ScottPlot編譯visual studio 2022

    基于 C# 的 圖表控件庫 ScottPlot,開源免費,可以用于開發(fā)一些上位機(jī)軟件,如電壓、電流波形的顯示,開發(fā)【示波器】圖形界面,可以顯示一些圖表、波形,總之功能比較的強(qiáng)大,本文介紹了基于C#的圖表控件庫 ScottPlot編譯visual studio 2022,需要的朋友可以參考下
    2022-06-06
  • Unity PC版Log的具體位置介紹

    Unity PC版Log的具體位置介紹

    這篇文章主要介紹了Unity PC版Log的具體位置介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • C#實現(xiàn)Winform小數(shù)字鍵盤模擬器

    C#實現(xiàn)Winform小數(shù)字鍵盤模擬器

    本文主要介紹了C#實現(xiàn)Winform小數(shù)字鍵盤模擬器,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • c#反射機(jī)制學(xué)習(xí)和利用反射獲取類型信息

    c#反射機(jī)制學(xué)習(xí)和利用反射獲取類型信息

    反射(Reflection)是.NET中的重要機(jī)制,通過放射,可以在運(yùn)行時獲得.NET中每一個類型(包括類、結(jié)構(gòu)、接口和枚舉等)的成員,包括方法、屬性、事件,以及構(gòu)造函數(shù)等,還可以獲得每個成員的名稱、限定符和參數(shù)等,有了反射,即可對每一個類型了如指掌
    2014-01-01
  • C#實現(xiàn)的4種常用數(shù)據(jù)校驗方法小結(jié)(CRC校驗,LRC校驗,BCC校驗,累加和校驗)

    C#實現(xiàn)的4種常用數(shù)據(jù)校驗方法小結(jié)(CRC校驗,LRC校驗,BCC校驗,累加和校驗)

    本文主要介紹了C#實現(xiàn)的4種常用數(shù)據(jù)校驗方法小結(jié)(CRC校驗,LRC校驗,BCC校驗,累加和校驗),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • C#獲取本機(jī)IP地址和Mac地址的方法

    C#獲取本機(jī)IP地址和Mac地址的方法

    這篇文章主要介紹了C#獲取本機(jī)IP地址和Mac地址的方法,實例分析了C#網(wǎng)絡(luò)功能的基本技巧,需要的朋友可以參考下
    2015-05-05
  • C#記錄消息到日志文件的方法

    C#記錄消息到日志文件的方法

    這篇文章主要介紹了C#記錄消息到日志文件的方法,涉及C#針對日志文件的讀寫操作技巧,非常簡單實用,需要的朋友可以參考下
    2015-07-07
  • C#實現(xiàn)Winform動態(tài)添加菜單的方法

    C#實現(xiàn)Winform動態(tài)添加菜單的方法

    這篇文章主要介紹了C#實現(xiàn)Winform動態(tài)添加菜單的方法,涉及C#操作菜單的技巧,需要的朋友可以參考下
    2015-05-05

最新評論