2017-01-09 5 views
0
public class Excel01 extends JFrame{ 
     public static JTable table = new JTable(); 

    public Excel01() { 
     table.addMouseListener(new MouseListener()......... 


    } 
     class PopUp extends JPopupMenu..... 
     class SharedListSelectionHandler implements ListSelectionListener 
     public static void main(String[] args) { 
     Excel01 ex = new Excel01(); 
     ObjectOutputStream oos = new ObjectOutputStream(soc.getOutputStream()); 
     oos.writeObject(obj); 

    } 

} 

私はコード全体を含んでいませんでした。私が何をしたのかを説明します。 私はJFrame拡張でクラス "Excel01"を作成します。ObjectOutputStreamとJtable mouseClick設定

このExcel01をオブ​​ジェクトファイルとして作成しました。私のサーバーに接続しているクライアントに送信してください。

私の質問は です。1.クライアント側。ポップアップJtableは成功しました。またサーバーのデータ でも、Excel01のテーブルのマウスクリックイベント設定はクライアント側では機能していませんでした。

私はこのObject OutputputStreamが何を出力しているのか分かりません。マウスイベントを送信したい場合、何をしなければならないのですか?

答えて

1

あなたがお互いに行うには何もを持っていませんあまりにも多くの概念を劇的に過負担自分であるように見えます。あなたはどんな進歩を遂げるする場合

は、あなたがそこに解剖に実部にそれらのものが必要になります。

  • アンのObjectOutputStreamがに書き込み Javaオブジェクトに使用されている(ここではおよそJava serialization読みます)
  • Aマウスイベントは、「信号」に関連するUIです...一部のリモートサーバへのその
を送信するにはポイントが単にありません

他の言葉で言えば、最初に一歩前にして、使用しようとしているこれらの異なる概念について最初に学ぶべきです。そして、の部分がであることを理解したら、それらを使って問題を解決してください。

"サーバー"にクライアントが何かを伝えたいと思うようです。その後、答えはで、ではなく、サーバーに「同じUIコンポーネント」を与え、そこでマウスイベントを送信します。答えは、クライアントが対話している "データ"を明確に定義することです。このクライアントを使用して実行できる潜在的なアクションです。

次に、クライアントとサーバーの間に別のプロトコルを定義します。クライアントからサーバーに「コマンド」を送るための何らかの方法です。サーバーはコマンドを受け取り、それについて何かします。

例:

  • あなたのクライアントの起動時に、それは
  • サーバー「を表示するために私にデータを送る」サーバーを頼むかもしれないが、データは、効率的な方法で(ちょうどJavaのリストをシリアライズすることができることを送信しますしかし、また、彼は行内の値を変更する例えば
  • ユーザーがクライアントで動作する何か他のもの)を、可能性があり
  • 今できる
  • クライアント:アップ」
  • サーバーにリクエストを送信し、変更を事前に検証します日付値[X、Y]は、」
  • Serverが戻ってくる 『はい(クライアントは、ユーザーにエラーメッセージを与えることができる)
+0

関連UNを送信するためにどのような方法があり、『いいえ、失敗働いていた』または』 "信号"を他に送る? –

+1

私はちょうど私の答えに入れて更新を参照してください。あなたがしたいことを理解するのにはしばらく時間がかかりました。そしてあなたは間違ったことをしています;-) – GhostCat

+0

あなたのプロトコルはクライアントに「データ」を送り、そのデータを使ってサーバと同じ行動を行うべきであることを意味しますか? –

関連する問題