- PR -

リッチクライアント技術は使える?使えない?

投稿者投稿内容
Dandan
常連さん
会議室デビュー日: 2002/01/17
投稿数: 25
投稿日時: 2003-07-25 16:56
引用:

なべぞうさんの書き込み (2003-07-25 10:49) より:
 1.ファンクションリスナがコントロールと1対1なのでフォーカスが他のコントロールに
   移っているとイベントを拾うことができない。
   (わたしの知識不足で、他に対処方法があるかもしれませんが)

 2.グリッドコントロールで費用細目を表示し、最終行の上に赤線を引き、最終行の下に
   赤二重線を引くことができなかった。
といったところです。



ありがとうございます。なるほど、了解です。
2.はWYSIWYGのレイアウトでVB/VCだとそのようなプロパティがある、ということですね。

引用:

なべぞうさんの書き込み (2003-07-25 10:49) より:
もしかしたらSwingに向いている画面というか分野があるかもしれません。
#Dandanさんが関わったプロジェクトはどういった画面を作成したのでしょうか?



私が作成したのはWindowsのエクスプローラのように左側がディレクトリのツリーで右上側にファイルリスト、右下にステータスがあるようなウィンドウです。

オブジェクトの見た目の数としてはそんなに多くは無かったと思います。どちらかというと、カスタムコンポーネントを作っておいて、JBuilderで貼り付けられたので楽だったような気がしました。

このアプリだと、おっしゃられた1.のような他のフォーカスの時にイベントが行ってしまわない方が良かったです。
MUSE
常連さん
会議室デビュー日: 2003/04/06
投稿数: 42
投稿日時: 2003-07-25 17:41
引用:

Shinさんの書き込み (2003-07-25 14:48) より:

Windowsのユーザであれば比較する必要もなく
VB/VCを選択すればいいのではないかと思うんですが。。。


そうですね。Shinさんの意見に賛成です。
Wata
ぬし
会議室デビュー日: 2003/05/17
投稿数: 279
投稿日時: 2003-07-25 18:18
引用:

Shinさんの書き込み (2003-07-25 14:48) より:
Windowsのユーザであれば比較する必要もなく
VB/VCを選択すればいいのではないかと思うんですが。。。


javaよりもVB/VCの方が得意な人(たち)ならそうでしょうね…。
そうでない(javaの方が得意 or ともに初心)なら十分比較する価値はあると思いますよ。
少なくとも、GUI部分以外の開発効率はjavaの方が高いと思います。
# GUIでも自分は劣っているとは思わないですが…。

『フォームエディタで簡単に作りたい』という要求なら、私はDelphiの方が好きですね。
Wata
ぬし
会議室デビュー日: 2003/05/17
投稿数: 279
投稿日時: 2003-07-25 18:46
引用:

なべぞうさんの書き込み (2003-07-25 10:49) より:
 2.グリッドコントロールで費用細目を表示し、最終行の上に赤線を引き、最終行の下に
   赤二重線を引くことができなかった。
といったところです。


これはびしばしさんのいようように、TableCellRendererを使えばできますよ。例えば、
コード:
TableCellRenderer renderer = new DefaultTableCellRenderer() {
   public Component getTableCellRendererComponent(
      JTable table, Object value, boolean s,	boolean f, int row, int column) {
      
      Component renderer =
         super.getTableCellRendererComponent(
            table,	value, s, f, row, column);

      if (row == table.getRowCount() - 1) {
         ((JComponent)renderer).setBorder(
            BorderFactory.createMatteBorder(1, 0, 3, 0, Color.RED));
      }
      return renderer;
   }
};


みたいなレンダラを定義すればよいのでは?この例だと二重線でなく太線ですが、Borderを自作すれば二重線を引くのも問題ないでしょう。

1も2もSwingが貧弱だというには、ちょっと理由が弱いと思います。
うのきち
ベテラン
会議室デビュー日: 2003/02/17
投稿数: 55
投稿日時: 2003-07-25 21:41
ちょっと凝ったGUIを作ろうとすると、VBではつらくなってきません?
といって「安全な言語」に慣れてしまった今、もうC++には戻れないし。

昔は、C++ Builder使っていて、結構気に入っていましたけど、今だったらSwingで組みますね。J2SE 1.4.2あたりだと、かなり速くなっているし。
とんび
常連さん
会議室デビュー日: 2003/07/11
投稿数: 32
投稿日時: 2003-07-25 21:51
引用:

なべぞうさんの書き込み (2003-07-25 10:49) より:
 1.ファンクションリスナがコントロールと1対1なのでフォーカスが他のコントロールに
   移っているとイベントを拾うことができない。
   (わたしの知識不足で、他に対処方法があるかもしれませんが)


ここらへんよくわからないのですが、ファンクションリスナとはイベントリスナのことですか?(Googleでもヒットしない)
だったらイベントリスナとコンポーネントはn対mに出来るんじゃ?
あと、普通イベントが発生した時点でフォーカスうつると思うんですが?

 VB使ってたころはコンポーネントの位置を自分で計算してたので、javaのレイアウトマネージャを知って感動してしまいました。
ウインドウのサイズが変わらなければ、必要ないかもしれないけどそんなのダイアログボックスぐらいしかないですよね。
VB,VCにも採用されるべきだと思うんですが。

 まあ、VC,VBにくらべて貧弱ってところは否定できないけど、Eclipseのようなヘビーなプログラム作るんでない限り十分な気がしますが。
ふうた
大ベテラン
会議室デビュー日: 2001/08/23
投稿数: 198
お住まい・勤務地: 岡山
投稿日時: 2003-07-26 14:27
引用:

Shinさんの書き込み (2003-07-25 14:48) より:

Windowsのユーザであれば比較する必要もなく
VB/VCを選択すればいいのではないかと思うんですが。。。



ここに関しては、なぜ昨今C/SシステムからWebシステムに移行されているか考えてもらえれば明らかだと思います。数人で使うだけのシステムであればVB/VCで開発したほうが簡単だと思いますが、大人数で使用する場合(インターネットなど不特定多数に人に使わせる場合)、運用を考えるとクライアントにプログラムを配布するコストが馬鹿にならなくなります。Webシステムは、クライアントにブラウザを使わせることにより、この配布コストを軽減し、システムのアップデートもサーバ側だけで可能となります。

Java、Flash、PDFなどは、ほとんどのクライアントで動作環境を持っていると思われ(ブラウザとほとんど変わらないぐらい配布されている)、かつブラウザ(HTML)よりもリッチなユーザインタフェースを持っているということで注目されていると思います。
MUSE
常連さん
会議室デビュー日: 2003/04/06
投稿数: 42
投稿日時: 2003-07-27 17:16
引用:

ふうたさんの書き込み (2003-07-26 14:27) より:

Webシステムは、クライアントにブラウザを使わせることにより、この配布コストを軽減し、システムのアップデートもサーバ側だけで可能となります。


Webシステムは配布コストが軽減されるんですか?

スキルアップ/キャリアアップ(JOB@IT)