首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Java -创建RPG对话框

Java -创建RPG对话框
EN

Stack Overflow用户
提问于 2011-05-10 10:54:36
回答 1查看 2.3K关注 0票数 2

所以这可能看起来很奇怪,但我正在尝试创建一个非常基本的游戏,它的工作原理有点像一个较老的RPG游戏的界面(考虑从列表中选择攻击(例如: Pokemon))。

现在我有一个扩展JFrame的类,它包含三个面板的私有变量:一个用于在屏幕顶部75%的位置显示精灵,另外两个是我希望在上面显示文本的面板(一个用于"CRITICAL HIT“之类的公告,另一个用于可选选项)。第二个文本框有时才会可见,但这是不相关的。

有没有人能帮我开场或者帮我一把?我正在寻找许多方法,但似乎没有一种方法能满足我的需求。

编辑:我的游戏已经布置好了,精灵面板完全按照它应该的样子工作,尽管听起来很像它,但我并没有盲目地做任何事情。除了以一种有效的方式显示对话框之外,我已经让游戏正常工作了。

编辑2:好吧,也许我说得不太清楚,我最关心的是找到最好的Java组件来绘制底部面板的字符串。字符串将定期更改,因此我尝试过的一些方法(如图形drawString() )并不是很有效。

谢谢你,罗夫哈

EN

回答 1

Stack Overflow用户

发布于 2011-05-10 11:21:53

那么,你最初的问题陈述缺乏任何实际的内聚性问题,除了“有人可以让我开始或帮助我吗?”这使得你很难弄清楚你真正需要的是什么。我了解到,您希望我们提供帮助的是在发生事件时向用户显示弹出的对话框。如果你不太关心特效,有三种简单的方法可以做到:

1)只需为您的消息设置精灵,并根据需要将它们设置为可见。如果您的重要消息数量有限,则可以轻松控制消息的可见性/闪光性。

2) JTextArea允许您简单地将一些文本打印到框中。如果你有一个冗长的控制台,或者消息不能仅仅是几张图片,那么它是很有用的。您只需在您的面板中有一个JTextArea,并根据需要对其进行更新:

代码语言:javascript
代码运行次数:0
运行
复制
JTextArea messageBox;
messagePanel.add(messageBox);

//displays a message
messageBox.setText("CRITICAL HIT!!!");

但是用户可能不会注意到文本何时改变,因为它是立即改变的。您是想闪现文本,还是在文本区域顶部显示一些动画,这取决于您。

3)如果你想要一个更具侵入性的消息,你实际上可以有一个弹出对话框,用户必须点击"OK“才能继续。这相对容易做到,您甚至可以为消息放置自定义图标:

http://download.oracle.com/javase/tutorial/uiswing/components/dialog.html

代码语言:javascript
代码运行次数:0
运行
复制
JOptionPane.showMessageDialog(myFrame,
    "You got a critical hit!!!", 
    "Critical Hit",
    JOptionPane.INFORMATION_MESSAGE,
    criticalHitIcon);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5944657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档