我正在尝试制作德州扑克局域网游戏。游戏流程已经完成,我现在正在使用套接字启动服务器/客户端通信。我的问题是:
在客户端GUI中更新表格(玩家折叠等)的最佳方法是什么?在这种情况下是否有一个受欢迎的概念?
我有一张带有桌子,社区卡片,玩家等的JPanel。是否可以(或者一个好主意)定期将这个JPanel发送给客户?
答案 0 :(得分:5)
为什么发送整个jPanel?这太过于套接字了。
只需为每个客户端GUI发送足够的信息以自行重新绘制表格。
答案 1 :(得分:0)
您想要使用SwingUtilities.invokeLater
在客户端代码中,它与服务器通信并接收您想要更新UI元素的数据,请执行以下操作:
public void clientSideOfClientServerCommunication(final someClass someData){
SwingUtilities.invokeLater(new Runnable(){
public void run(){
//use someData to update GUI elements.
}
});
}