界面设计
关于界面设计,首先要具备最起码的要求,比如数据显示,报告显示,菜单栏,工具栏等这些东西,这里就不阐述如何设计了,直接给出最简单的设计样例:
之后的实例也都是使用大地线长度计算的样例,这个界面中图标(工具栏中打开文件,保存报告,数据分析)需要自己临时设计,这个后面会提到,然后如果时间实在来不及,可以不设计图标,只显示文字,然后我在左下角添加了一个简单的日志输出,也就是看到的”就绪“。这个如果大家喜欢的话也可以添加一下i,比如我保存报告结束后会在这里提示"保存成功"。
图标设计
在解决方案资源管理器中右键添加,选择新建项,选择现有模板,选择位图文件,更改文件名,点击添加
然后就肆意挥洒笔墨吧,这里建议的画笔属性如下:
画完点击保存,然后添加的时候需要从文件夹中找到就可以了。
让程序显示更清晰
如果运行的程序后感觉很模糊,清晰度很低,可以向上面的操作一样添加一个这样的文件:
然后将该文件中的下面显示的两个注释取消掉:
是不是VS2022不需要这个设置,我刚才运行了一下发现没有这个提到的模糊,嘎嘎清晰。之前的2017是需要这个设置的,才会显示地更清晰,如果大家有的话就按照这样子的设置,没有就当看个乐子。
具体代码编写
写代码的话大家就找相关的教程吧,我推荐B站上的李英冰老师的教学视频,因为李老师也是这个比赛的指导之一。然后我这里提几个点吧,我觉得比较重要的,首先就是大家不要把所有的代码都写在Form1.cs中(谁是这么干的评论区面壁思过),多尝试添加类,以类的形式实现相关功能,我一般会添加两个类:
FileHelper.cs //用以文件处理的类
Process.cs //用以计算的类,也就是写公式进行计算的类
然后就是要会添加注释,注释的东西不需要太多,在每一个类前面添加注释,在每一个重要函数前添加注释,在试题册有明显划分区域的地方根据试题册标题添加注释即可。其中函数注释需要注意,直接键入三个‘/’即可,它会自动生成这样的注释:
中间空的一行写函数的解释,后面是参数的注释,比如这个函数可以是这个样子的:
/// <summary>
/// 用来计算某一个数的多次方
/// </summary>
/// <param name="a">底数</param>
/// <param name="n">指数</param>
/// <returns></returns>
double Pow(double a, int n) { return Math.Pow(a, n); }
然后加一条吧,就是如果公式中大量设计Math库函数,比如三角函数这类的,可以像这样简化操作:
//为了使代码简化清晰定义函数
double Sin(double a) { return Math.Sin(a); }
double Cos(double a) { return Math.Cos(a); }
double Tan(double a) { return Math.Tan(a); }
double Atan(double a) { return Math.Atan(a); }
double Sqrt(double a) { return Math.Sqrt(a); }
double Pow(double a, int n) { return Math.Pow(a, n); }
这样在具体的公式里面本来的Math.Sin()就可以写成Sin()。因为一般公式都是相当复杂的公式,而且由于不允许使用拓展显示器只能半屏写代码半屏看试题册,同时最后需要粘贴代码到报告文档,因此这样可以一定程度上简化代码量,提高代码可读性,也减少犯错。
总结
这篇就写到这吧,这篇总结了写代码的一些具体事项,后面会写一点可能会遭遇的坑吧,但是需要总结一下,慢慢来吧。加油!