我想以固定的间隔(就像时钟一样)在圆形轮廓上绘制文字 有没有一种简单的方法可以做到这一点?
答案 0 :(得分:2)
无论您使用何种图形库,绘图文本都需要x和y来知道绘制文本的位置。
假设时钟的中心是Cx和Cy。假设x向右移动,y向正向移动。您可能需要根据您的平台偏移或反转这些。
因此,您可以使用数学(三角法)来获取每个时钟数的x和y。你需要沿着圆的度数和圆的半径,公式将是:
y = sin(degree) * radius + Cy
x = cos(degree) * radius + Cx
答案 1 :(得分:0)
toddmo的数学是正确的。在实施方面,目前尚不清楚你究竟在问什么。如果您从头开始,最简单的方法是:
1)在Visual Studio中创建Windows窗体应用程序
2)在mspaint中绘制圆圈,并将图像文件作为资源导入。
3)创建一个使用表单构建器UI显示该资源的图片框。这是在表单上显示圆圈的简单方法。
4)通过在表单构建器UI
中将其拖放到表单上来创建“Label”控件5)创建一个'Timer'控件(可以从'toolbox'窗口拖放到窗体上)
6)双击Timer控件,在它的事件中,根据toddmo描述的sin和cos设置Label控件的位置。
7)将Timer控制的间隔设置为适当的值。
如果dpi发生变化,这将无法很好地扩展,但这是一个开始。