【问题标题】:string cannot be converted to component字符串不能转换为组件
【发布时间】:2016-12-28 10:12:53
【问题描述】:

不知道怎么回事,请高手帮帮我

private void btn_sendActionPerformed(java.awt.event.ActionEvent evt) {                                         
    try {
        server_writer.write(cmb_server.getSelectedItem() + ":" +txt_chat.getText());
        server_writer.newLine();
        server_writer.flush();
    } catch (IOException ex){
        System.out.println("Failed");
    }

    list_chat.add("Me : " + txt_chat.getText()); // ERROR
    txt_chat.setText("");
}

*注意:App 与 Jlist(Client-Server) 聊天

【问题讨论】:

  • 这是什么:dsfhskdjl?你的问题是什么。
  • 很难告诉你这个输入。什么是 list_chat?
  • @YoungMillie 那是“哦,不,SO 有一个最短问题长度。但是等等,我有个主意……”

标签: java


【解决方案1】:

假设list_chatJList,错误会告诉您在使用add() 方法时应该添加Component 而不是String。见the API documentation

我认为您想将元素添加到列表中,正如该问题的答案中所解释的那样:Adding elements to a JList(但这只是一个猜测,您的问题并不清楚)。

将导致错误的行替换为:

list_chat.addElement("Me : " + txt_chat.getText());

我认为应该可以。

【讨论】:

    【解决方案2】:

    猜测:list_chat 是某种 UI 元素,它有一个方法 [add()][1],它需要一些 JComponent 作为参数。

    但是这里:

    "Me : " + txt_chat.getText()
    

    产生一个 String 对象。字符串不是 UI 组件。

    这就是编译器告诉你的。所以这里真正的答案是:学习阅读那些编译器消息。他们确切地告诉你问题是什么......

    【讨论】:

      猜你喜欢
      • 2017-03-11
      • 1970-01-01
      • 2017-11-27
      • 2015-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多