我正在使用秋千。这是我用来为logout创建一个返回int值的代码的代码,使用该值可以在前一个函数中执行其他操作。但是我收到了一个错误。我该如何解决?
public int logout()
{
int s=0;
JFrame main=new JFrame("Logout");
Dimension d=Toolkit.getDefaultToolkit().getScreenSize();
main.setSize(d.width/2,d.height/3);
main.setLayout(new FlowLayout());
JButton yes=new JButton("Yes");
main.add(yes); main.setVisible(true);
yes.addActionListener(new ActionListener()
{
public void actionPerformed(java.awt.event.ActionEvent e)
{
s=1;
main.setVisible(false);
}
});
return s;
}
答案 0 :(得分:3)
您希望您的计划做什么?
您编写的代码尝试:
s
变量的值从logout()方法返回。s
变量设置为1
- 但这不起作用,因为您已经从{{1}返回方法,变量logout()
甚至不再存在。所以,请高兴编译器告诉你一个问题。
我想您要等待用户的注销批准。然后使用s
方法(Java教程将帮助您正确地完成此操作)。
顺便说一下:养成正确格式化和缩进代码的习惯。阅读你的代码并不好玩。
答案 1 :(得分:1)
使用int choice = JOptionPane.showConfirmDialog(your_main_frame,
"Do you want to logout?",
"Logout?",
JOptionPane.YES_NO_OPTION);
if (choice == JOptionPane.YES_OPTION) {
// "Yes" clicked
} else {
// "No" clicked
}
方法创建确认对话框,以显示确认对话框。请阅读Java教程equality contract,了解如何创建此类对话框。源代码应如下所示:
new Vue({
el: '#app',
data: {
params: {}
},
computed: {
query () {
var query = []
for (param in this.params)
if (this.params[param].length > 2)
query.push(param + '=' + this.params[param])
query.length
? query = '?' + query.toString().replace(/,/g, '&')
: query = ''
return query
}
},
methods: {
submit () {
console.log('my.url' + this.query)
}
}
})