Mat*_*ake 2 java swing chat jframe
我正在尝试为我的程序创建一个聊天客户端,我想为每个聊天打开一个新窗口(A&B不会和A&C在同一个窗口中)我有psudocode我正在尝试但不确定如何写它.
聊天客户端:
inputstream.read()
Read who message from
If (chat window arleady open with person from)
{
Add Message to output section of the window
{
else if (chat window not open)
{
Open new chat window with person from
Display message in new chat window
}
Run Code Online (Sandbox Code Playgroud)
要做到这一点,我想到的是将IP存储在一个数组中,然后每当客户端收到消息时,它将通过数组查看是否存储了IP.如果存储,则窗口应该已经打开,否则需要打开窗口.我可以使用来自JFrame的defaultonclose命令对此进行编程,以便在窗口关闭时调用IP的删除,但这是我遇到的问题.
1.1我已经考虑过生成一个新线程,命名该线程,然后当一条消息进入时将它传递给与该名称匹配的线程,但我不知道该怎么做.我之前已经读过线程的名称,但从未将某些内容传递给特定的线程.
无论如何在没有下载额外库的情况下更容易做到这一点?
不要JFrame用于另一个窗口,因为你不能设置parent v.s.owner,JDialog而是使用
然后JFrame.getOwnedWindows()返回JDialog(s)使用JDialog的所有实例(myFrame所有者)
在所有情况下Window[] allWindows = Window.getWindows();返回从目前的JVM所有情况下,返回的所有实例(J)Frames,(J)Dialogs,(J)Windows或者JOptionsPanes
| 归档时间: |
|
| 查看次数: |
1722 次 |
| 最近记录: |