C#————是一个我很不愿意去碰的语言,但是还是得低头,巨硬还是巨硬.......

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

前几天在Github上找开源资料,希望能借鉴一下,仔细一看,window平台的基本上是C#代码,然后这些代码是我无法翻译的,即使有很深的类C基础,但我没有任何基于.Net的常识。

于是我才会萌生了学习.net的想法。在VB6学完之后,我觉得VB.NET没有意思,换了结构,还要带运行库,向下兼容又不好,以至于很长时间内我很讨厌net代码。

Net是一个很重的枷锁,能用VB6去替代的我都会用VB6,但是有一些东西是你没有办法替代的,毕竟20年的差距是巨大的。

不说那么多前言了。

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

有C/C++基础的人[代表着这可能不适合完全零基础的window小白阅读],可以很快的上手这个语言,而且在有.net支持下,一切都是那么的行云流水。[毕竟VS2017不会像VB6IDE一样一天爆炸20几次。]

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

我使用的工具如下:

Vs2017

Vscode

C#语法教程 https://www.runoob.com/csharp/csharp-tutorial.html

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

学习VB的人第一个程序大概是这样的。

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

和VB一样,VSIDE让你可以很快的上手winform开发。[拖控件~~ /。。。但是工程文件真的好大]

使用拖控件和用一个万法相同的语法...赋值语句

所以我们也来制作显示HelloWorld的windows图形程序。[我十分讨厌命令行,但是不能否认,其实命令行程序才是你学习语言好工具]

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

打开VS2017 新建项目 选择

大概进度条几秒钟后,你就能看到这么一个设计页面。

如果你的侧边栏没有工具箱,那么请从视图——》工具箱 ——》公共控件——》选中Button在窗体里拖拽设置一个按钮,双击跳转到代码页面。

应该是长这个样子。

非常熟悉的大括号和void 这是类C语言最经典的标志了。

熟用VB开发的人肯定会很快就明白上面的函数代表着什么,没错,就是事件。

当你去寻找Print函数的时候,很快就会发现,winform并没有给你提供这个函数。

那么我们就用GDI+[C#调用GDIP是真的简单,快哭了,VB要声明一堆东西。]写一下这个函数好了[经过一些百度文字教程,你应该很快就能了解到部分语法]。

    public partial class Form1 : Form{
Graphics aaa;
void Print(string str){
//GDI+ 模拟Print输出
Font PrintFont;
PrintFont = new Font("Microsoft YaHei UI", 24.00F);
SolidBrush Brush = new SolidBrush(Color.FromArgb(, , , ));
aaa = this.CreateGraphics();
aaa.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
aaa.DrawString(str, PrintFont, Brush, , );}
}

接着在Button_Click()事件中调用这个Print。 [winform 貌似没有自动重绘的属性,所以不建议放在Load事件里执行]

        private void button1_Click(object sender, EventArgs e){
Print("HelloWorld");
}

于是我们就得到了第一个C#桌面程序:

C#_初识之HelloWorld的更多相关文章

  1. Python成长之路第一篇(3)_初识字典

    经过上章的学习我们已经了解到了列表可以通过索引来获取对应的值,在本章我们将学到通过名字来索引数据,这种结构的类型称之为映射(maooing),在Python中字典是唯一内建的映射类型,其中的值我们称之 ...

  2. Python基础(1)_初识Python

    一.为什么要编程 解放人力:让机器按照人们事先为其编写好的程序自发地去工作 二.什么是编程语言 编程语言就是程序员与计算机之间沟通的介质:程序员把自己想说的话用编程语言写到文件里,这其实就开发了一个程 ...

  3. 【秒懂Java】【第1章_初识Java】02_软件开发

    通过上一篇文章<01_编程语言>,我们了解到 Java是众多编程语言中的其中一种 编程语言可以用来开发软件 因此,我们即将要学习的Java技术,是属于软件开发的范畴.那软件开发的前景如何呢 ...

  4. python成长之路第三篇(1)_初识函数

    目录: 函数 为什么要使用函数 什么是函数 函数的返回值 文档化函数 函数传参数 文件操作(二) 1.文件操作的步骤 2.文件的内置方法 函数: 一.为什么要使用函数 在日常写代码中,我们会发现有很多 ...

  5. 每天一个Linux命令(19)find命令_初识

    Linux下find命令在目录结构中搜索文件,并执行指定的操作.     (1)用法: 用法: find pathname    -option      [-print | -exec | -ok] ...

  6. Python练习_初识数据类型_day3

    题目 1. 作业 1,有变量name = "aleX leNb" 完成如下操作: 1) 移除 name 变量对应的值两边的空格,并输出处理结果 2) 移除name变量左边的&quo ...

  7. Python练习_初识函数_day9

    1. 1.作业 1,写函数,检查获取传入列表或元组对象的所有奇数位索引对应的元素,并将其作为新列表返回给调用者. 2,写函数,判断用户传入的对象(字符串.列表.元组)长度是否大于5. 3,写函数,检查 ...

  8. 【秒懂Java】【第1章_初识Java】01_编程语言

    各位小伙伴们好哇!从今日起,我将开始更新<秒懂Java>系列文章,从0开始讲解Java的方方面面,后面也将推出配套的视频版,欢迎大家保持关注! 我会尽力办到:在保证通俗易懂的同时,不丢失知 ...

  9. 【秒懂Java】【第1章_初识Java】04_学习资料

    为了学到更多的新知识,我们经常会去网上搜索各种学习资料.或者,在学习.工作过程中遇到了解决不了的问题,我们也会去网上搜索答案(比如百度.谷歌一下).这篇文章,主要想跟大家聊聊关于学习资料的选择. 建议 ...

随机推荐

  1. 洛谷P1006 传纸条【dp】

    题目:https://www.luogu.org/problemnew/show/P1006 题意: 给定一个m*n的矩阵,从(1,1)向下或向右走到(m,n)之后向上或向左走回(1,1),要求路径中 ...

  2. H5页面测试总结

    前言 在最近几个项目中,小编接触了较多关于H5页面的测试,H5页面的测试除了业务逻辑功能测试外,其他部分的测试方法基本是可以通用的,在此对H5页面的一些通用测试方法进行总结分享给大家. H5页面介绍 ...

  3. JVM——内存结构

    一.程序计数器/PC寄存器 (Program Counter Registe) 用于保存当前正在执行的程序的内存地址(下一条jvm指令的执行地址),由于Java是支持多线程执行的,所以程序执行的轨迹不 ...

  4. Django基础之命名URL和URL反向解析

    在使用Django项目时,一个常见的需求是获得URL的最终形式,以用于嵌入到生成的内容中(视图中和显示给用户的URL等)或者用于处理服务器端的导航(重定向等). 人们强烈希望不要硬编码这些URL(费力 ...

  5. epoll反应堆

    /* * epoll基于非阻塞I/O事件驱动 */ #include <stdio.h> #include <sys/socket.h> #include <sys/ep ...

  6. 8.5 JavaScript的BOM(二)

    8.5 JavaScript的BOM 即 浏览器对象模型(Browser Object Model) 浏览器对象包括 一.Window(窗口) 如果需要打开一个新的网站,应该通过超级链接等方式让用户主 ...

  7. ANDROID_ID

    在设备首次启动时,系统会随机生成一个64位的数字,并把这个数字以16进制字符串的形式保存下来,这个16进制的字符串就是ANDROID_ID,当设备被wipe后该值会被重置.可以通过下面的方法获取: i ...

  8. LeetCode 124. 二叉树中的最大路径和(Binary Tree Maximum Path Sum)

    题目描述 给定一个非空二叉树,返回其最大路径和. 本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列.该路径至少包含一个节点,且不一定经过根节点. 示例 1: 输入: [1,2,3] 1 ...

  9. cannot open clipboard 解决办法

    对于电脑本身或者一些应用程序操作的时候,会出现cannot open clipboard的问题,这是你系统没有剪切板程序 首先: 在开始->运行中输入clipbrd 回车, 如果系统弹出了剪切板 ...

  10. CSS3 新特性

    ~平时喜欢逛博客,看别人的学习总结和遇到的问题解决办法,恰好最近在做书签整理,翻到了之前一个前辈移动前端的总结,所以我就按他的总结模块对自己的知识进行了梳理,不过由于都是手写的,为了方便,下面的都是平 ...