几天前我问了一个关于如何绘制一些自定义图形的问题here。当我与不同的人谈论它时,他们建议不要通过编码绘制我的图形,而是使用png文件。所以我想知道我的选择是什么以及行业中常用的是什么。
对我的问题的快速解释:我正在制作德州扑克扑克赔率计算器,主要用于训练。我想当我点击一张卡片时,会出现一个圆形对话框,在那里我可以选择卡片的套装和价值。想象一下,中间的一个圆形切入4,套件选项和围绕该圆圈的环有13个可能的卡值。
我想到的选项:
当然第三种选择似乎更具吸引力,但这是正确的方法吗?我应该做多大的尺寸,因为它们将是静态的我猜...
答案 0 :(得分:1)
我自己使用过公共领域的扑克牌图片。例如Playing Cards。我还发表了对你之前发表的评论的评论。
答案 1 :(得分:1)
说实话,车轮的套装理念很好,但我可能不想要一个带有13个选项的车轮,可能是收音机选择,或者是一个简单的滑块(你可以编写自己的事件监听器来显示上面的值)所以你可以有j,q,k,a等...),或者更可能是一个简单的列表:http://download.oracle.com/javase/tutorial/uiswing/components/list.html。
除非它非常专业,否则制作图像可能毫无意义。我会诚实的,如果你的编程不是很好,很容易画出漂亮的画面;但是,如果你对编程很有好处,你可以制作漂亮的渐变和非常漂亮的选择器而不需要任何png ....
这实际上取决于你在设计方面做得更好。我个人认为png可能对于一个轮子来说可能更难,但对我来说它更难,因为我花时间绘制渐变等......
以下是渐变和优质应用的良好链接:http://nadeausoftware.com/node/82。请记住,你可以在ascii或paint中绘制套装符号,在这里查看一些例子:http://www.java-forums.org/java-2d/25333-drawing-heart-valentine.html(比其他人更复杂,以了解你可能会遇到什么)。
标准的专业应用程序通常只是因为使用png,因为他们有工作人员的图形设计师。 pngs的优点是它们通常更容易创建和添加。编程的好处是可以通过编程方式更改它们,这意味着在选择更改颜色等时....使用png仍然可以实现,但并不总是更容易。
顺便说一下,这里也看一下如何制作一个漂亮的径向渐变的例子,因为你可能需要这样的东西,无论你是否选择使用png。
长话短说,我会通过编码来绘制它,虽然这是主观的,最后我会为价值和套装做出不同的选择。
答案 2 :(得分:1)
我使用(可能是分层的)上下文菜单,如How to Use Menus: Bringing Up a Popup Menu中所述。 Action
,也提到there,会使键盘替代品变得特别容易。在菜单中,您可以使用相应的Miscellaneous Symbols
,可以按照here缩放和着色。
如果您使用圆形JComponent
,则会出现相关几何体here的示例。
附录:
我想用更多图片......
然后选择归结为向custom layout添加组件或在custom component中进行命中测试。