我正在为我的单选按钮使用ItemListener。我看到了很多ItemListener函数,但我的似乎工作方式不同。
... jUserButton2.addItemListener(ffs);
}
private ItemListener ffs = new ItemListener(){
@Override
public void itemStateChanged(ItemEvent e) {
if (e.getStateChange() == ItemEvent.SELECTED) {
String user = e.getItem().toString();
System.out.println(user);
}
}
};
它返回的值是“javax.swing.JRadioButton[User,445453,49x18,alignmentX=0.0,alignmentY=0.5,border=javax.swing.plaf.synth”。SynthBorder@1f2f60d,flags=288,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax。摆动普拉夫。InsetsUIResource[top=0,left=0,bottom=0,right=0],paintBorder=false,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=User]。”
它不应该只返回值吗?(本例中为“用户”)
JRadioButton
是一个JToggleButton
。如果查看源代码,您将看到事件是使用受保护的fireItemStateChange
方法触发的。例如,在javax中。摆动JToggleButton。ToggleButtonModel#setSelected
方法您可以找到以下代码:
// Send ItemEvent
fireItemStateChanged(
new ItemEvent(this,
ItemEvent.ITEM_STATE_CHANGED,
this,
this.isSelected() ? ItemEvent.SELECTED : ItemEvent.DESELECTED));
这意味着当您收到ItemEvent
并调用getItem
时,您将收到JRadioButton
(上述代码中的this
(第三个构造函数参数))。
在单选按钮上调用toString
会准确地显示您所看到的内容。
您可以通过将e.getItem()
转换为JRadioButton
并在其上调用getText()
(或您想要检索的任何信息)来解决此问题
正如文档所说:
public Object getItem()
返回受事件影响的项。
受影响的项目是JRadioButton
(这也是控制台打印的内容)。这在逻辑上是正确的,因为受影响的项目是那个按钮。只需将代码更改为:
String user = ((JRadioButton) e.getItem()).getName();
System.out.println(user);
我以为我的授权实现已经完成,但是当试图检索用户详细信息对象时,我得到的只是用户名。 我正在使用oauth,并提供以下详细信息。 配置AuthenticationManager: 完成后,我可以调试到我的userDetailsService: 这完成得很好,我的客户端得到了JWT。但是我在调试以后的控制器方法时发现了以下问题。 在本例中,injectedUser=null,auth是一个OAuth2
问题内容: 我正在尝试使用我的Facebook帐户登录到我的网站,但是Facebook仅给出名称和ID,不足以登录用户。在我获得完整的信息之前,例如名字,姓氏,电子邮件等。 现在由facebook提供的数据: 我正在使用Oauth v2.0通过Facebook将用户登录到我的网站。 问题答案: 看起来您正在使用Graph API的v2.4。看到 https://developers.faceboo
如何在volley中发出JSON请求,我需要在正文中发送一个验证头和JSON对象,并且我只希望得到一个状态代码200的答案 我尝试了使用string或JSON object,object的不同类型的响应侦听器,但总是出现错误:android volley org.JSON.JSONException:在字符0的输入结束 或者volley中是否有其他类型的请求支持json对象和主体中的验证头,并且响
问题内容: 搜索时,Elasticsearch返回包含各种元信息的数据结构。 实际结果集包含在从数据库返回的JSON结果内的“ hits”字段中。 Elasticsearch是否有可能仅返回所需的数据(然后是“ hits”字段的内容)而没有嵌入所有其他元数据中? 我知道我可以将结果解析为JSON并提取出来,但是我不希望复杂性,麻烦和性能下降。 谢谢! 这是Elasticsearch返回的数据结构的
问题内容: 我有一个遗留应用程序,我将需要补充一些数据。当前,我们有一个数据库表,用于存储美国(及其地区)邮政编码,GMT偏移量以及一个标志,用于显示该邮政编码是否使用夏时制。这是从某个免费提供商处下载的,我现在找不到源。 现在,我需要用每个邮政编码的完整奥尔森名称(例如)来补充此表,因为这似乎是将存储在数据库中的给定日期/时间(对于该购买者而言本地的)转换为对象的唯一好方法。 看一下桌子: 在另
问题内容: 好的,我有以下代码: 然后,当我尝试回显内容时,只能回显输出第一项,但是如果我尝试回显,则会得到未定义的偏移量。 但是,如果我通过PHPMyAdmin运行以上查询,它将返回10个项目的列表。为什么不能将其识别为10个项的数组,让我回显0-9? 谢谢您的帮助。 问题答案: 那是因为数组代表返回结果集中的一行。您需要再次执行该功能以获得下一条记录。例: