又是帮忙,同事要做一个记分牌的功能,嵌入到程序主窗口,用来显示时间和一些选择列表
抽象的说,就是一个动画效果,每个页面的上半部或下半部可以翻动,显示上一页或下一页
每页上显示字符串
考虑用D3D太牛刀了,用GDI太繁琐了,用C#和GDI+尝试了一把,不过之前没用过C#,开始也没底
不打算做的太立体,所以用正交投影效果,页翻动时页宽不变,只是纵向拉伸压缩,辅以阴影效果
因为从来没用过C#,在此记录一下一些实现过程的问题和方法:
C#中类的成员函数的参数没有默认值吗?构造函数不能用默认值初始化成员变量吗?(未解,TODO)
从一个图片文件生成Bitmap对象,Bitmapbitmap("filename");
从Bitmap对象创建Graphics,Graphics g = Graphics.FromImage(bmp);
创建字体,Font font = new Font("font_type", size);
创建画刷,SolidBrush brush = new SolidBrush(color.Red);
创建输出矩形:Rectangle rect = new Rectangle(x, y, w, h);
创建文本格式,StringFormat strFormat = new StringFormat();
设置文本格式,strFormat.Alignment = strFormat.LineAlignment =