当前位置: 首页 > news >正文

C#,入门教程(03)——Visual Studio 2022编写彩色Hello World与动画效果

C#,入门教程(01)—— Visual Studio 2022 免费安装的详细图文与动画教程https://blog.csdn.net/beijinghorn/article/details/123350910

C#,入门教程(02)—— Visual Studio 2022开发环境搭建图文教程https://blog.csdn.net/beijinghorn/article/details/123434181

软件无非就是输入数据、计算并生成结果。

输入数据、输出结果多样化,比如有数据(库)、文本、文字(流)、数据流、声音、图片、动画与视频等等。计算方法就更多了。

1、创建第二个程序

咱们先复习一下前面已经做过的一点工作。

第一种方法,找到 Visual Studio 2022,点击运行即可。

第二种方法,找到 C:\Zoo\Cat\2022-03-11下的 WindowsFormsApp1.sln 文件,双击打开。

分别点击左上角【文件(F)】...【新建(N)】...【项目(P)】按钮。

进入创建新项目的界面。

如果左侧存在 Windows窗体应用(.NET Frameworl) C#,则点击右下角【下一步】即可。

(这个一般有!)

否则,可以点击(2)(3)(4)这样的选择:C#,Windows,桌面;

选种右侧栏下面的:(5)Windows窗体应用(.NET Frameworl) ,再点击【下一步】即可。

 

2、搭建实验桌面

再进行简单的设置,这个第二回 有详细的介绍,不明白可以回去看看。

 注意:将解决方案和项目放在同一目录中(D)!

点击【创建(C)】。

然后依次放置 Panel1,Panel2;在 Panel1中 放置  Button1, Button2, Button3, Button4;

在 Panel2 中放置 WebBrowser1 。这个请多练习,以后都是这个路数。

再次提醒:下面这个图片中部,有一个带绿色三角的▶启动按钮!

3、彩色的 Hello World!

 双击 【Button1】按钮,进入编写程序界面,请将 button1_click 这段代码编写为:

(比第二回 的内容,增加了一行!)

        private void button1_Click(object sender, EventArgs e){string content = "Hello World!";content = "<font color=red>" + content + "</font>";webBrowser1.DocumentText = content;}

点击【▶启动】,你的第二个程序运行起来了!

点击【Button1】:

正如你所愿,红色的hello world!

知道吗?hello world 从你开始,告别黑白片时代,进入彩色世界!你真棒!

4、五颜六色的Hello world!

这显然不能满足我对色彩的要求,希望每个字都不同的颜色!!!怎么办?

点击 Form1.cs【设计】,这个,回到了界面设计的地方。

双击【Button2】按钮,请将 button2_click 这段代码编写为:

        private void button2_Click(object sender, EventArgs e){string content = "";content += "<font color=red>" + "H" + "</font>";content += "<font color=yellow>" + "e" + "</font>";content += "<font color=blue>" + "l" + "</font>";content += "<font color=green>" + "l" + "</font>";content += "<font color=black>" + "o" + "</font>";content += "<font color=red>" + " " + "</font>";content += "<font color=green>" + "w" + "</font>";content += "<font color=blue>" + "o" + "</font>";content += "<font color=green>" + "r" + "</font>";content += "<font color=red>" + "l" + "</font>";content += "<font color=yellow>" + "d" + "</font>";content += "<font color=red>" + "!" + "</font>";webBrowser1.DocumentText = content;}

程序中的  content += ... ,其中的 += 可以理解为一种简写,等于:

content = content + ...

"<font color=red>" 等等都是 HTML 的语法,不是很懂也没关系,照猫画虎即可。当然,这是比较原始的写法,以后再用更好的方式。

点击【▶启动】,你的第二个程序运行起来了!

点击【Button2】:

 神奇不能就此止步!要不要再继续?

这时候,你还可以 按住键盘 Ctrl ,然后 滚动 鼠标的滚轮 试试?看看有什么神奇的效果?

5、每次不同颜色的 Hello world!

稍微学点新东西。

点击 Form1.cs【设计】,这个,回到了界面设计的地方。

双击【Button3】按钮,请将 button3_click 这段代码编写为:

        private void button3_Click(object sender, EventArgs e){string content = "Hello World!";// 定义一个随机数发生器(骰子机)Random rnd = new Random();// 计算机上面的颜色一般用三个数表示,分别是 红色、绿色、蓝色;// 称为 RGB 系统;颜色的数值一般都是 0 到 255;// 定义一个整数int 类型的变量 colorRed 用以保存随机生成的 红色数值;int colorRed = rnd.Next(0, 255);// 定义一个整数int 类型的变量 colorGreen 用以保存随机生成的 红色数值;int colorGreen = rnd.Next(0, 255);// 定义一个整数int 类型的变量 colorBlue 用以保存随机生成的 红色数值;int colorBlue = rnd.Next(0, 255);// 后面这两句先不管它,以后再介绍。string fontStyle = "color:rgb(" + colorRed + "," + colorGreen + "," + colorBlue + ");";content = "<font style='" + fontStyle + "'>" + content + "</font>";webBrowser1.DocumentText = content;}

点击【▶启动】,再点击【Button3】即可出现不同颜色的 hello world!

不同的是!!!你可以多次点击【Button3】,每次的颜色都不同啊!

6、Hello world! 动画

动画很难吗?你马上就可以实现人生第一个动画!真的!

点击 Form1.cs【设计】,这个,回到了界面设计的地方。

双击【Button4】按钮,请将 button4_click 这段代码编写为:

        private void button4_Click(object sender, EventArgs e){// 创建一个定时器Timer timer1 = new Timer();// 定时器的时钟周期为 1000 毫秒(1秒)timer1.Interval = 1000;// 每个时间周期执行的代码是 button3_Clicktimer1.Tick += button3_Click;// 启动该定时器!timer1.Enabled = true;}

以上代码稍微有点难度,不好理解。

点击【▶启动】,再点击【Button3】即可出现不断变颜色的 hello  world!

button4_click 这段程序,相当于计算机代替你在不断地,每间隔1000毫秒,按一次【Button3】。机器人呢!如果觉得不够快,可以将 1000 改为 200 试试。

一个 Hello world 玩出这些花样,C# 比你知道的神奇多了。

 ——————————————————————

POWER BY 315SOFT.COM &
TRUFFER.CN

下一篇:

C#,入门教程(04)——Visual Studio 2022 数据编程实例:随机数与组合https://blog.csdn.net/beijinghorn/article/details/123533838

相关文章:

C#,入门教程(03)——Visual Studio 2022编写彩色Hello World与动画效果

C#&#xff0c;入门教程(01)—— Visual Studio 2022 免费安装的详细图文与动画教程https://blog.csdn.net/beijinghorn/article/details/123350910 C#&#xff0c;入门教程(02)—— Visual Studio 2022开发环境搭建图文教程https://blog.csdn.net/beijinghorn/article/detail…...

杀死安装 CentOS-7-x86_64-DVD-1908

使用 VMware 安装 CentOS-7-x86_64-DVD-1908 CentOS是 reahat 的 免费版本&#xff0c;有了ubutun &#xff0c;为什么还要使用 CentOS呢&#xff1f; 在linux 服务器实际开发中&#xff0c;大家都用的CentOS&#xff0c;因为两个原因&#xff0c;一个是免费&#xff0c;第二是…...

55.【5】BUUCTF WEB NCTF2019 sqli

进入靶场 输入admin 123 过滤的这么严格&#xff1f;&#xff1f;&#xff1f; 过滤很严格&#xff0c;此时要么爆破&#xff0c;要么扫描 直接扫描&#xff0c;得到robots.txt 访问后又得到hint.txt 继续访问 图片内容如下 $black_list "/limit|by|substr|mid|,|admi…...

LeetCode 题目 2545. 根据第 K 场考试的分数排序

在本篇文章中&#xff0c;我们将探讨如何根据第 K 场考试的分数对学生进行排序。这个问题是 LeetCode 上的一个中等难度问题&#xff0c;涉及到排序算法和自定义比较函数的使用。 问题描述 解题思路 理解问题 首先&#xff0c;我们需要理解问题的核心&#xff1a;根据第 K 场…...

算法随笔_12:最短无序子数组

上一篇: 算法随笔_11: 字符串的排列-CSDN博客 题目描述如下: 给你一个整数数组 nums &#xff0c;你需要找出一个 连续子数组 &#xff0c;如果对这个子数组进行升序排序&#xff0c;那么整个数组都会变为升序排序。请你找出符合题意的最短子数组&#xff0c;并输出它的长度。…...

计算机毕业设计PySpark+Hadoop+Hive机票预测 飞机票航班数据分析可视化大屏 航班预测系统 机票爬虫 飞机票推荐系统 大数据毕业设计

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…...

Linux-C/C++--初探linux应用编程概念

对于大多数首次接触 Linux 应用编程的读者来说&#xff0c;可能对应用编程&#xff08;也可称为系统编程&#xff09;这个概念并不 太了解&#xff0c;所以在正式学习 Linux 应用编程之前&#xff0c;笔者有必要向大家介绍这些简单基本的概念&#xff0c;从整体上认识 到应用编…...

用sklearn运行分类模型,选择AUC最高的模型保存模型权重并绘制AUCROC曲线(以逻辑回归、随机森林、梯度提升、MLP为例)

诸神缄默不语-个人CSDN博文目录 文章目录 1. 导入包2. 初始化分类模型3. 训练、测试模型&#xff0c;绘图&#xff0c;保存指标 1. 导入包 from sklearn.linear_model import LogisticRegression from sklearn.ensemble import RandomForestClassifier, GradientBoostingClass…...

动手学大数据-3社区开源实践

目录 数据库概览&#xff1a; MaxComput&#xff1a; HAWQ&#xff1a; Hologres&#xff1a; TiDB&#xff1a; Spark&#xff1a; ClickHouse&#xff1a; Apache Calcite 概览 Calcite RBO HepPlanner 优化规则&#xff08;Rule&#xff09; 内置有100优化规则 …...

使用Pydantic驾驭大模型

本文介绍Pydantic 库&#xff0c;首先介绍其概念及优势&#xff0c;然后通过基本示例展示如何进行数据验证。后面通过多个示例解释如何在LangChain中通过Pydantic进行数据验证&#xff0c;保证与大模型进行交互过程中数据准确性&#xff0c;并显示清晰的数验证错误信息。 Pydan…...

【HarmonyOS之旅】基于ArkTS开发(二) -> UI开发之常见布局

目录 1 -> 自适应布局 1.1 -> 线性布局 1.1.1 -> 线性布局的排列 1.1.2 -> 自适应拉伸 1.1.3 -> 自适应缩放 1.1.4 -> 定位能力 1.1.5 -> 自适应延伸 1.2 -> 层叠布局 1.2.1 -> 对齐方式 1.2.2 -> Z序控制 1.3 -> 弹性布局 1.3.1…...

【论文投稿】Python 网络爬虫:探秘网页数据抓取的奇妙世界

目录 前言 一、Python—— 网络爬虫的绝佳拍档 二、网络爬虫基础&#xff1a;揭开神秘面纱 &#xff08;一&#xff09;工作原理&#xff1a;步步为营的数据狩猎 &#xff08;二&#xff09;分类&#xff1a;各显神通的爬虫家族 三、Python 网络爬虫核心库深度剖析 &…...

队列的基本用法

以下是关于 C 语言中队列的详细知识&#xff0c;包括队列的生成、相关函数使用以及其他重要概念&#xff1a; 一、队列的概念 队列是一种线性数据结构&#xff0c;它遵循先进先出&#xff08;First In First Out&#xff0c;FIFO&#xff09;的原则&#xff0c;就像日常生活中…...

网络安全VS数据安全

关于网络安全和数据安全&#xff0c;我们常听到如下两种不同声音&#xff1a; 观点一&#xff1a;网络安全是数据安全的基础&#xff0c;把当年做网络安全的那一套用数据安全再做一遍。 观点二&#xff1a;数据安全如今普遍以为是网络安全的延伸&#xff0c;实际情况是忽略数据…...

Linux(NFS服务)

赛题拓扑&#xff1a; 题目&#xff1a; NFS&#xff1a; 共享/webdata/目录。用于存储AppSrv主机的WEB数据。仅允许AppSrv主机访问该共享。 [rootstoragesrv ~]# yum install nfs-utils -y [rootstoragesrv ~]# mkdir /webdata [rootstoragesrv ~]# chmod -R ow /webdata …...

python编程-OpenCV(图像读写-图像处理-图像滤波-角点检测-边缘检测)边缘检测

OpenCV中边缘检测四种常用算子&#xff1a; &#xff08;1&#xff09;Sobel算子 Sobel算子是一种基于梯度的边缘检测算法。它通过对图像进行卷积操作来计算图像的梯度&#xff0c;并将梯度的大小作为边缘的强度。它使用两个3x3的卷积核&#xff0c;分别用于计…...

SSM课设-学生管理系统

【课设者】SSM课设-学生管理系统 技术栈: 后端: SpringSpringMVCMybatisMySQLJSP 前端: HtmlCssJavaScriptEasyUIAjax 功能: 学生端: 登陆 学生信息管理 个人信息管理 老师端: 多了教师信息管理 管理员端: 多了班级信息管理 多了年级信息管理 多了系统用户管理...

【Pytorch实用教程】TCN(Temporal Convolutional Network,时序卷积网络)简介

文章目录 TCN的基本特点TCN的优点TCN的应用场景典型的TCN架构总结TCN(Temporal Convolutional Network,时序卷积网络)是一种用于处理序列数据的深度学习模型,尤其适用于时间序列预测、语音识别、自然语言处理等任务。它利用卷积神经网络(CNN)来处理时序数据,相比于传统的…...

网络安全 | 什么是正向代理和反向代理?

关注&#xff1a;CodingTechWork 引言 在现代网络架构中&#xff0c;代理服务器扮演着重要的角色。它们在客户端和服务器之间充当中介&#xff0c;帮助管理、保护和优化数据流。根据代理的工作方向和用途&#xff0c;代理服务器可分为正向代理和反向代理。本文将深入探讨这两种…...

3 前端(中):JavaScript

文章目录 前言&#xff1a;JavaScript简介一、ECMAscript&#xff08;JavaScript基本语法&#xff09;1 JavaScript与html结合方式&#xff08;快速入门&#xff09;2 基本知识&#xff08;1&#xff09;JavaScript注释&#xff08;和Java注释一样&#xff09;&#xff08;2&am…...

HTML 语义化

目录 HTML 语义化HTML5 新特性HTML 语义化的好处语义化标签的使用场景最佳实践 HTML 语义化 HTML5 新特性 标准答案&#xff1a; 语义化标签&#xff1a; <header>&#xff1a;页头<nav>&#xff1a;导航<main>&#xff1a;主要内容<article>&#x…...

stm32G473的flash模式是单bank还是双bank?

今天突然有人stm32G473的flash模式是单bank还是双bank&#xff1f;由于时间太久&#xff0c;我真忘记了。搜搜发现&#xff0c;还真有人和我一样。见下面的链接&#xff1a;https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...

Golang 面试经典题:map 的 key 可以是什么类型?哪些不可以?

Golang 面试经典题&#xff1a;map 的 key 可以是什么类型&#xff1f;哪些不可以&#xff1f; 在 Golang 的面试中&#xff0c;map 类型的使用是一个常见的考点&#xff0c;其中对 key 类型的合法性 是一道常被提及的基础却很容易被忽视的问题。本文将带你深入理解 Golang 中…...

Java如何权衡是使用无序的数组还是有序的数组

在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

06 Deep learning神经网络编程基础 激活函数 --吴恩达

深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...

【HTTP三个基础问题】

面试官您好&#xff01;HTTP是超文本传输协议&#xff0c;是互联网上客户端和服务器之间传输超文本数据&#xff08;比如文字、图片、音频、视频等&#xff09;的核心协议&#xff0c;当前互联网应用最广泛的版本是HTTP1.1&#xff0c;它基于经典的C/S模型&#xff0c;也就是客…...

用机器学习破解新能源领域的“弃风”难题

音乐发烧友深有体会&#xff0c;玩音乐的本质就是玩电网。火电声音偏暖&#xff0c;水电偏冷&#xff0c;风电偏空旷。至于太阳能发的电&#xff0c;则略显朦胧和单薄。 不知你是否有感觉&#xff0c;近两年家里的音响声音越来越冷&#xff0c;听起来越来越单薄&#xff1f; —…...

Fabric V2.5 通用溯源系统——增加图片上传与下载功能

fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...

Aspose.PDF 限制绕过方案:Java 字节码技术实战分享(仅供学习)

Aspose.PDF 限制绕过方案&#xff1a;Java 字节码技术实战分享&#xff08;仅供学习&#xff09; 一、Aspose.PDF 简介二、说明&#xff08;⚠️仅供学习与研究使用&#xff09;三、技术流程总览四、准备工作1. 下载 Jar 包2. Maven 项目依赖配置 五、字节码修改实现代码&#…...

人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式

今天是关于AI如何在教学中增强学生的学习体验&#xff0c;我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育&#xff0c;这并非炒作&#xff0c;而是已经发生的巨大变革。教育机构和教育者不能忽视它&#xff0c;试图简单地禁止学生使…...