X



Java低速GUI Swing 10
0001デフォルトの名無しさん
垢版 |
2011/09/20(火) 23:23:15.82
ハードウェアの高スペック化、描画アルゴリズムの変更、JavaVMの高速化に伴い、パフォーマンスの問題は改善されています。
しかしながら、"Java"というだけで未だに敬遠されるのが現状。
そんなSwingと引き続き付き合っていくみんなのスレッドです。

Java低速GUI Swing 9
http://hibari.2ch.net/test/read.cgi/tech/1261232019/
Java低速GUI Swing 8
http://pc12.2ch.net/test/read.cgi/tech/1227234261/
Java低速GUI Swing 7
http://pc11.2ch.net/test/read.cgi/tech/1204155623/
Java低速GUI Swing 6
http://pc11.2ch.net/test/read.cgi/tech/1190807478/
Java低速GUI Swing 5
http://pc11.2ch.net/test/read.cgi/tech/1161139809/
Java低速GUI Swing 4
http://pc8.2ch.net/test/read.cgi/tech/1140533866/
Java低速GUI Swing 3
http://pc8.2ch.net/test/read.cgi/tech/1121700954/
Java低速GUI Swing 2
http://pc8.2ch.net/test/read.cgi/tech/1095398949/
Java低速GUI Swing
http://pc5.2ch.net/test/read.cgi/tech/1062271447/l50
0003デフォルトの名無しさん
垢版 |
2011/09/20(火) 23:27:45.12
このスレッドは天才チンパンジー「アイちゃん」が
言語訓練のために立てたものです。

アイと研究員とのやり取りに利用するスレッドなので、
関係者以外は書きこまないで下さい。

                  京都大学霊長類研究所
0006デフォルトの名無しさん
垢版 |
2011/09/21(水) 04:02:35.65
         _,,,,,ィ=ー-、_      /
       /. : : : : : : : : : : .ヽ     /  ィ
      /. : /: : : : : : : : : : : : .\  /  ┼
      /. : /: : : : ハ: : :}斗、ヽ: : .|    ノ
      |. : /_: 斗〒\八」 ∨リリ     _,_
      乂レl;W弋ノ      };l_>    | | ``
    ∠___l;人  , ─ァ  ノ'ノ
      |: :从ハ`┼一ィ刋:::\     r┴,
      |: : : : : : :};Y/ハ{;;;;;;;;ノ      /
      ヽ-‐ァ‐ァ';|l/\∧イ    \  /
        /\/;;|l' ̄ハ }      \
        /  |;;メ二ニ| |
       ャ、__/l;lゝ   ト‐|
      / `/|_,_|;|,_,_,_,_,_ト′
     /  / |==|;|=====|
   ∠、,,ィ〜' └r幵─‐r七
         {Ξ}  匕}
0014デフォルトの名無しさん
垢版 |
2011/09/22(木) 08:19:33.40
AWTもターゲットに入ってていいんだよね?

Q. AWT と Swing 混ぜちゃ駄目って聞いたんですけど
  混ぜちゃ駄目なんですか・・・・?
A.
 今まででは、「駄目」というのが正解です。
 が、現在開発中(未リリース)のバージョンではSwingとAWTの混在ができるようになっています。
 正式リリースがされるまで、情報の錯綜があって混乱すると思いますが
 普通の人にとっては「まだ駄目」という状況だと思ってください。

Q. Nimbusって何よ。
A.
 次期Swingの標準となるとされているLAFです。
 元々は、SUNのGnome環境のテーマに使われていた見た目を移植したものになります。
 実装にはXMLベースでLAFを定義できるSynthLookAndFeel を利用しています。
 jdk6の開発版で試す事ができます。

Q. こんなプログラムを作れって言われたんですが・・・
A.
 宿題スレへどうぞ。

Q. なんでスレタイに低速って入ってるの?
A.
 まだまだ速くなるってことさ。
0015デフォルトの名無しさん
垢版 |
2011/09/22(木) 08:19:57.39
Q. JavaFX と Swing 混ぜちゃ駄目なの?

A.
  SwingベースのアプリにJavaFXコンポーネントを乗せるのはOKです。
  逆は不可です。(JavaFX2.0現在)ちなみに、JavaFX2.0は今年の下旬に
  リリースされます。今はベータ版です。
0019デフォルトの名無しさん
垢版 |
2011/09/22(木) 21:06:07.82
Nimbusに変えたいけどレイアウトが崩れるし
微妙にセンスが悪い気がするので結局Windowsのままだ
0020デフォルトの名無しさん
垢版 |
2011/09/22(木) 23:44:36.26
Nimbusと混ぜるとウマーとJOGLパイプライン統合とアプレットのDnDはもうQ&Aでもよさそう。
SwingX系はJRE7の一般DL以降くらいじゃねか?
JavaFXまわりは検討もつかん。JavaFXはprismエンジンだから描画スレッドとEDT別だよってのはここの範疇?
0021デフォルトの名無しさん
垢版 |
2011/09/25(日) 11:50:18.93
>>7
見た目はWindowsのLookAndFeelでぎりぎりなんとかなるけど、
ファイル選択ダイアログの細部の挙動がネイティブと違って気持ち悪い。
あと、テキストフィールドで右クリックしたときの挙動とか。

でも、大きな理由はそんな細部じゃなくて、起動が遅いこと。
ディスクキャッシュに乗ってないとJVM起動して、関連するクラスロードして、
最初のフレーム表示するまでに数秒かかる。
動き出せばネイティブとの速度的な差はない。

0023デフォルトの名無しさん
垢版 |
2011/09/25(日) 12:55:35.08
商用のソフトじゃ使われてないから人気がないように見えるけど
社内とかだと結構使われてたりするよ
0024デフォルトの名無しさん
垢版 |
2011/09/25(日) 13:27:25.01
数千行のテキストを容易に表示できて
表示するテキストを後から容易に追加できて
テキスト中に何らかのコンポーネント(テキストのリンク、アイコン、ボタンなどどれでも良い)も表示できて
そこからイベントを発生させられるような
コンポーネントはありますか?

JEditorPaneでハイパーリンクを使うことを考えましたが
HTMLにテキストを追加するのが容易ではないのと、テキスト追加が頻繁にあると重くなりそうで、別の選択肢が無いか探しています。
0025デフォルトの名無しさん
垢版 |
2011/09/25(日) 14:53:43.96
テキスト追加と、表示とを分けて考えたほうがいい。
たとえば編集にはJTextArea、表示にJEditorPaneを使って、Wikiっぽくするとか
どうよ? どうしても同じ画面でやりたいとかじゃなきゃ、いけそうだが。
0027デフォルトの名無しさん
垢版 |
2011/09/25(日) 20:09:40.16
>>26
難しい、重いと思うならコンポーネントなんか使わないで独自実装でもすれば?
ぐだぐだ抜かしてないで、まず実装してから最適化しろよ。
0037デフォルトの名無しさん
垢版 |
2011/10/04(火) 17:56:40.53
>>34
依存しなくてもできるし、依存してもいい。
もともと、JavaFXスクリプトっていって、WindowsプログラムにおけるWPFのような
お気軽なGUI設計思考で作られた。でも、スクリプト自体がなんもなくなってしまった。
0038デフォルトの名無しさん
垢版 |
2011/10/05(水) 18:48:09.85
JavaFXにはコンポーネントが不足してるのでSwingも使う→
Swingにはリッチなコンポーネントが不足しているのでSwingXも使う(java7いまここ)→Swing labは終ってしまったので結局路頭に迷う。
0039デフォルトの名無しさん
垢版 |
2011/10/06(木) 02:28:29.67
Swingはん、まだまだこれからやで〜。
わし、今日、3980円もする、JavaGUIVol.1ていう、Swingばっかの本こうてきたわ。

0040デフォルトの名無しさん
垢版 |
2011/10/06(木) 02:44:39.96
奇遇やな
わしおととい図書館でVol.2借りてきたで
付属のCDにVol1のソースまで付いてきて得した気分になったで
0041デフォルトの名無しさん
垢版 |
2011/10/06(木) 08:34:53.32
UI 関連は、タッチパネルUI勢、HTML5勢の勢いがすごいからな

すぐに Swing 並の API が JavaScript で用意できるか俺は懐疑的だが
もしものすごい実装用意されたら、ついに Swing は終わってしまうな

0044デフォルトの名無しさん
垢版 |
2011/10/06(木) 21:15:58.13
流れてくるメッセージがちょいちょい違うから混乱するかもな。
それで混乱して質問したら「なんでそんなことやってんだ」と罵倒される。
それに変なクセがつきそう。

練習ならメインウインドウにボタンやらエディットコントロールを貼り付ければ良いと思うよ。
全部CreateWindowでできる。
猫でもわかるかWisdomsoft参考にしろ。
0046デフォルトの名無しさん
垢版 |
2011/10/11(火) 10:20:12.45
JApplet(Swingのアプレット)にJTableって乗せれる?
004846
垢版 |
2011/10/12(水) 12:15:11.24
>>47
どうもです。Javaアプレット復権しないっすかね〜。
0050デフォルトの名無しさん
垢版 |
2011/10/12(水) 14:05:56.18
Javaメインに使ってる自分としては、わざわざActionScriptとか別に覚えるの面倒だから
Appletのが良いかな。
0051デフォルトの名無しさん
垢版 |
2011/10/12(水) 14:20:24.13
全盛期のjavaアプレットは、あまりに重くてただのブラクラと化してたけど
Swingみたく今はそうでもないのかね
0052デフォルトの名無しさん
垢版 |
2011/10/12(水) 14:34:34.67
iOS や Windows 8 がすでに、もうブラウザ上で動くプログラムは
HTML5 オンリーと決め込んでるからな

Flash も Java も Silverlight も廃れるべきと奴らは考えてるらしい。

おれが思いうに Java は着々とセキュリティホールは塞がれてるし、
動作速度も速い。ブラウザの対応も年の功で進んでる。開発環境は
揃ってて、クロスプラットフォームのクライアントサイドの技術と
しては今ある中ではベストだと思うよ。
0055デフォルトの名無しさん
垢版 |
2011/10/12(水) 17:24:59.78
ウィンドウベースのアプリケーションに移植するなら
JApplet.setContentPane(mainPane)
のとこを
JFrame.setContentPane(mainPane)
とかすれば、まあ動くだろう

まあ、アプレットはブラウザ上でセキュアに動くから、
ユーザにとって価値があるのであって、なんでもやらかす
ウィンドウベースのレガシーなアプリケーションにされると
よくないだろう
0058デフォルトの名無しさん
垢版 |
2011/10/12(水) 20:06:08.81
>>50
そこでGWTですよ
0059デフォルトの名無しさん
垢版 |
2011/10/12(水) 23:09:50.56
>>58
確かに、html + JavaScript(&ライブラリ)使って開発するよりは、Javaプログラマにとっては
ハードルは下がりますね…

しかしGWT使った開発、規模が大きくなるとすごく面倒。
コンパイルが洒落にならないくらい時間かかる、ってのが一番大きいと思うけど、他にもデバッグ時とか。
同等規模のhtml5風開発したこと無いのでJavaプログラマにとってどっちがよりましか、
ってのは分からないんだけどもね。
0060デフォルトの名無しさん
垢版 |
2011/10/12(水) 23:37:32.61
>>55
Java6u10でAppletもJava Web StartもセキュリティについてはJNLPファイルで指定するようになったから
一緒なんだと思ってたけど、違うのかな?

http://java.sun.com/developer/technicalArticles/javase/6u10_applets/
とか、ちょっとURL見つからないけどAppletをデスクトップにドラッグ&ドロップすると
通常のアプリのようにアイコンダブルクリックで起動できるようになる(JWSとしてインストールされる?)
みたいなデモも昔見たことあるんだけど、こういうのみたときAppletとJWSって実質
同じものなのかなー、なんて思ったんだけど。

>>54
これかな?
http://java.sun.com/javase/ja/6/docs/ja/technotes/guides/javaws/developersguide/syntax.html#applet_desc
006160
垢版 |
2011/10/12(水) 23:50:40.90
ごめん、多分
> Appletをデスクトップにドラッグ&ドロップすると
> 通常のアプリのようにアイコンダブルクリックで起動できるようになる(JWSとしてインストールされる?)
は記憶違い。
そして>>55はJWSのことを言ってるわけじゃないことにも気付きました…
0064デフォルトの名無しさん
垢版 |
2011/10/13(木) 04:12:46.11
JavaFXがmobile&tabletでも動けばなぁ。
ここの部分は切り捨てなくてよかったと思うよJavaFX。
つかAndroidで動くCDC/PPがいるか。
0067デフォルトの名無しさん
垢版 |
2011/10/21(金) 21:28:11.58
java質問スレとどっちに書くか迷ったのですが、こちらで
質問させてください。

BorderLayoutなJFrameのCENTER位置にJTabbedPaneを
置いて、MouseListener#mouseExitedを仕込みその中で
setCursorsしています。

すると、JTabbedPaneから周りのcomponentにゆっくり
カーソルを出した場合は、さらにwindow外にポインタを
出してもsetしたカーソルを維持してくれます。

が、マウスを早く動かして周りのcomponent上での滞空時間が
短くなるようにカーソルをwindow外に出した場合は、カーソルが
変わってくれなかったり、windowの大きさ変更のカーソルに
なったりします。

これをゆっくり動かしたときと同じようにすることは出来ない
でしょうか。

(mouseExitedイベント自体はちゃんと発生してます)
(window外で発生するmouseDraggedイベント内でsetCursors
してもカーソルは変わってくれませんでした)
(setCursorsはRootPaneのGlassPaneにおこなっています)
006967
垢版 |
2011/10/22(土) 08:33:58.21
setCursorのjavadocに、「このコンポーネントの contains メソッドが
現在のカーソル位置に対して true を返」さないと駄目って書いてある
じゃんorz
マウスの動きが速くてsetCursor前にコンポーネント外に出てしまうと
きかなくなっちゃう、って話ですね。
完全にawtの問題でした。質問すれに行きます。すれ汚しすまんかったです。
0071デフォルトの名無しさん
垢版 |
2011/10/23(日) 15:31:13.82
SwingUtilities.invokeAndWait() が invocationTargetException をスローするとEDTが終了してくれないようなのですが、
何かいい対処方法ないでしょうか…
007271
垢版 |
2011/10/23(日) 15:37:25.43
ttp://javafaq.jp/S065.html#S065-37

ああ、ここらへんみたいです。自己解決しました。
0078デフォルトの名無しさん
垢版 |
2012/01/10(火) 12:06:38.54
SwingでmouseClickedの中でnew JDialog(...)してsetVisible(true)すると、
そこで処理が止まっちゃうんだけど、どうしたらいいの?

class HogeListener extends MouseAdaptor {
 public voud mouseClicked(MouseEvent ev.) {
  JDialog dialog = new JDialog(...);
  System.out.println("1");
  dialog.setVisible(true);
  System.out.println("2");
 }
}
0080デフォルトの名無しさん
垢版 |
2012/01/10(火) 20:02:40.41
さんくすです。
モーダルダイアログだとsetVisible(true)すると
setVisible(false)かdisponse()するまで処理が止まるんですね。
0081デフォルトの名無しさん
垢版 |
2012/01/12(木) 00:52:54.57
http://pastebin.com/4qH6Adke
上記のようなTableTest.javaというjavaのソースファイルを実行すると、
下図のように、表の部分にマダマダ余白があるにも関わらずスクロールバーが現れてしまうUIとなってしまいます
http://uproda.2ch-library.com/475736Up9/lib475736.jpg
このレイアウトで余白がなくなるまでスクロールバーが表示されないようにするにはどうすれば良いでしょうか?

また、初心者なので他に変な所があれば指摘頂けるとありがたいです
008381
垢版 |
2012/01/12(木) 23:34:46.24
>>82
出来ました!それすると表の項目名(xとy)が表示されないものとばかり思ってました
ありがとうございます
0084デフォルトの名無しさん
垢版 |
2012/01/15(日) 22:32:04.55
JTableの選択モードで

・クリックしたセルを含む行全体を選択(ハイライト)
・同時に選択できる行は1行のみ

のようにするにはどう選択モードを設定すればよいですか?
0086デフォルトの名無しさん
垢版 |
2012/01/20(金) 20:37:51.11
JEditorPaneにHTMLフォームを表示しsubmitボタンでフォームデータを表示するプログラムを
↓を参考に作成しましたが、submitボタンでNullPointerExceptionが発生します。
ttp://www15.plala.or.jp/kichijitsu/java/jeditorpane_submit.html

どこがおかしいのでしょうか?

editorPane.setEditable(false);
editorPane.setContentType("text/html");
editorPane.setText(content);
((HTMLEditorKit) editorPane.getEditorKit()).setAutoFormSubmission(false);
editorPane.addHyperlinkListener(new MyHyperlinkListener());

class MyHyperlinkListener implements HyperlinkListener {
 @Override
 public void hyperlinkUpdate(HyperlinkEvent event) {
  System.out.println("HOGEHOGE"); //←マウスがリンクに重なると表示されます。
  if(event instanceof FormSubmitEvent) {
   System.out.println("PIYOPIYO"); //←submitボタンを押してもここまできません。
   ・・・・
  }
・・・・

↓発生する例外
Exception occurred during event dispatching:
java.lang.NullPointerException
 at javax.swing.text.html.FormView.submitData(FormView.java:376)
 at javax.swing.text.html.FormView.actionPerformed(FormView.java:356)
 at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
 at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
 at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
 at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
 ・・・・
0087デフォルトの名無しさん
垢版 |
2012/01/24(火) 01:22:12.63
ポップアップメニューで選択されたのをトリガーとして
なにか重い処理を行う場合(サンプルコードのdoSomethingメソッドのような)、
ポップアップメニューが表示されたまま、画面が固まったようになってしまいます。
画面が固まるのは仕方ないとして、別処理の前にポップアップメニューを
非表示にすることはできないのでしょうか。よろしくお願いします。

サンプルコードは以下です
http://ideone.com/zIVRZ
0088デフォルトの名無しさん
垢版 |
2012/01/24(火) 18:55:30.08
>>87
別スレッド立てて、そのなかで重い処理すればいいよ。
今時はスレッドを直接使うんじゃなく、swingworker使うのが普通かな。
0090デフォルトの名無しさん
垢版 |
2012/02/03(金) 15:03:24.45
>>89
Sunの実装が手抜きで未確定文字左下のx,yしかwindowsに送ってないのが原因だから、
Java側からじゃどうしようもないと思う。

BugDatabase行くか、Swing使うの諦めるか、我慢するか。
0092デフォルトの名無しさん
垢版 |
2012/02/19(日) 10:56:26.50
GUIスレッドとファイル・通信を行う2つスレッドのがあります。
ファイル・通信を行うスレッドでイベントを発生させて、GUIスレッドでイベントをキャッチしたいのです。
どのようにすればイベントを発生させることができますか
0094デフォルトの名無しさん
垢版 |
2012/03/02(金) 14:18:11.33
あるウインドウAのメニューからそのウインドウの設定パネルBを出して、ウインドウAの位置や
大きさの現在値を表示したいのですが、設定パネルBを生成するのがウインドウAのコンストラクタ内
(Aの部品のメニューにaddActionListener()を設定して,その中でnew ActionListener(),
さらにその中でactionPerformed(ActionEvent)として,その中で new B() を呼ぶ)
なので,Aへの参照をBのコンストラクタに引数で渡して B(A instanceOfA) のようにしても
instanceOfAには常にnullしか入っていません。(つまりAのコンストラクタが完了して完全にAを
生成した状態になる前の時点でB(A)を呼び出してしまっているのだと思います)
こういうときSwingではどういうふうにするのが常套手段なんでしょうか?
Aのコンストラクタ内以外でBのデータを更新して表示する方法があるのかわかりません。
お教えいただきたくお願いします。
0095デフォルトの名無しさん
垢版 |
2012/03/02(金) 15:03:46.87
どうみてもメニューが押されて初めてBが生成されてるようにしか読めないのだが。
Bのコンストラクタにthisを渡したらthisがnullだったわけ?
0096デフォルトの名無しさん
垢版 |
2012/03/02(金) 15:24:30.23
>>95
そうれす。
この場合のthisはAなんだけど、Bのコンストラクタを呼び出すのがAのコンストラクタの内部だから
Aがまだ生成されていないのでthisはまだnullのままなんだと思う。
JavaはそこそこやってるんだけどSwingは最近始めたばかりなので感覚がわからん。
ウインドウA への参照を aRoot として取得できるかと思って B を生成するメニュー項目 menuItemB を使い
final JFrame aRoot = (JFrame) SwingUtilities.getRoot(menuItemB);
みたいなのをイベント発生前に入れてみても、所詮 A のコンストラクタ内なのでaRoot==nullなんだな。
目的とする処理はありがちなので常套手段があるんだと思う。引き続きお願いします。
0098デフォルトの名無しさん
垢版 |
2012/03/02(金) 16:00:44.75
this 自身はたとえコンストラクタの中でも null にならないよ!
きっと何か勘違いしてるよ!
本当にコンストラクタのせいだと思うならコンストラクタであれこれ初期化するのをやめればいいだけじゃない!
init メソッドとか別に作ってそこで色々やればいいと思うよ!
0099デフォルトの名無しさん
垢版 |
2012/03/02(金) 16:05:09.38
内部クラスでのthis参照は色々と落とし穴があるので要注意。
解らなかったらとりあえず内部クラス使うのやめてみよう。

いや、thisがnullとかありえないから。
0100デフォルトの名無しさん
垢版 |
2012/03/02(金) 16:28:55.75
>>98>>99ついでに>>97
確認のために内部クラスを使わずに単純なクラスA,Bを作り、Aのコンストラクタ内部で
BのコンストラクタB(A)を呼び出してみましたが,たしかにAには非null値がちゃんと渡されていました。
>>99さんのご指摘のとおり、やはり内部クラスからのthis参照がまずいようです。
>>98さんのご指摘のようにコンストラクタ以外のinit()メソッドのようなものを作って呼び出したいのですが
どのタイミングで呼び出せば良いかがわかりません。
「パネルBを開いた」というのを、Bのコンストラクタでもなく、actionPerformed()ブロックの中でもなく
呼び出すには、Swingではどのようなからくりを使うんでしょう?初心者でサーセン。
0101デフォルトの名無しさん
垢版 |
2012/03/02(金) 16:33:10.64
>>100
誤>「パネルBを開いた」というのを、...呼び出すには、...
正>「パネルBを開いた」というのを、...知るには、...
0102デフォルトの名無しさん
垢版 |
2012/03/05(月) 10:03:36.04
A() {
 JMenu menu;
 menu.addActionListener(new ActionListener() {
  actionPerformed(ActionEvent event) {
   B b = new B(this);
  }
 });
}
ということ?(上はかなりてきとーだけど)
上の場合の this は A ではなくて、無名クラスのですよ。
下のようにすれば、望みどおりいくような気がします。
見当違いでないとよいのですが。
A() {
 JMenu menu;
 menu.addActionListener(new ActionListener() {
  actionPerformed(ActionEvent event) {
   createB();
  }
 });
}

private void createB() {
 B b = new B(this);
}
0103デフォルトの名無しさん
垢版 |
2012/03/05(月) 11:53:37.70
eclipseスレから誘導されてきました
Eclipse + WindowBuilderでGUIを作って
フォームにButtonnとLabelを置いて、Buttonをダブルクリックして自動的に開いたソースコードの部分に
labelのテキストをSetText("変更しました")って変更したいんですけどlabelのオブジェクトにアクセスできないわけなんです
どうやってlabelにアクセスするのでしょうか?
0104デフォルトの名無しさん
垢版 |
2012/03/05(月) 12:14:48.43
>>103
誘導されたとはいえ、いくら何でもひどい。

Eclipseスレで「JavaのSwingの基礎知識をググってから 」ってところを何もしてないのがバレバレ。
Javaがある程度理解できるなら、ダブルクリックで表示されたソースを見ただけで
labelのインスタンスがわかるはず。
011194
垢版 |
2012/03/06(火) 14:09:03.26
>>102 さまはじめみなさま どうもありがとうございました。やりたかったのは次のようなことでした。
public class FrameA extends JFrame
{
 final JFrame frameA = this; //これで期待通り動いた[PPP]
 JMenuItem menuItemForB = new JMenuItem();
 menuItemForB.addActionListener(
  new ActionListener()
  {
   public void actionPerformed(ActionEvent e)
   {
    panelB = new PanelB(frameA); //[QQQ]
   }
  }
 );
}
public class PanelB extends JPanel
{
 public PanelB(FrameA frameA) //frameAの参照を引数で渡す[RRR]
 {
  //ここから frameA を操作するために frameA を参照する
 }
}
[PPP] のように単純に FrameA の this を取って [QQQ] [RRR] のように引数で渡したところ期待通り
PanelB の内部から frameA を参照して操作できるようになりました。動かなかった原因は [PPP] の
this のかわりに>>96に書いたaRootを使っていたことでした。これでOKですが、もし [RRR]のように
引数で親の参照を渡すのより良い方法がSwingプログラムの常套手段にあるようならお教えください。
0113デフォルトの名無しさん
垢版 |
2012/03/06(火) 15:56:14.06
PanelBが内部クラスならできるよ

public class FrameA extends JFrame
{
 JMenuItem menuItemForB = new JMenuItem();
 public FrameA(){
  menuItemForB.addActionListener(
   new ActionListener()
   {
    public void actionPerformed(ActionEvent e)
    {
     panelB = new PanelB(){
    }
   }
  );
 }

 public class PanelB extends JPanel
 {
  public PanelB() //frameAの参照を引数で渡す[RRR]
  {
   //FrameA.thisで呼ぶ
  }
 }
}
011494
垢版 |
2012/03/06(火) 16:20:38.22
>>113
なるほど FrameA の中で PanelB を定義すれば FrameA.this が見えるわけですね。
なお >>111に示したコードの前半もほんとうは>>113のように FrameA の
コンストラクタ内にあったんですが貼り付けるときに削除してしまっていました。
Swing も内部クラスも使ったことがなかったので勉強になります。ただ、PanelB の
コードは FrameA から独立させて書いておきたいので、Swing のマナー違反でない
限り >>111のような引数渡しの方法を使おうと思っています。どうもありがとうございました。
0115デフォルトの名無しさん
垢版 |
2012/03/06(火) 17:03:13.13
単に
public class FrameA extends JFrame
{
 JMenuItem menuItemForB = new JMenuItem();
 menuItemForB.addActionListener(
  new ActionListener()
  {
   public void actionPerformed(ActionEvent e)
   {
    panelB = new PanelB(FrameA.this);
   }
  }
 );
}
は?
011694
垢版 |
2012/03/06(火) 17:45:57.39
>>115
いちいちframeAに代入したりしないで直接FrameA.thisを渡すということですね。
>>111 よりスマートだしいけそうですね。どうもありがとうございます。
0117営利利用に関するLR審議中@詳細は自治スレへ
垢版 |
2012/04/05(木) 17:18:43.81
JFrame をマウスでドラッグして移動するイベントを取得するにはどのようにするのが
定石なんでしょうか?以下のような構造のコードを書いてみましたが、タイトルバーの下の
本体領域の内部では[A][B]の処理が行われるものの、本来の目的である JFrame 全体の
ドラッグは検知しないようです。HierarchyBoundsListener() を使えば JFrame 移動の
イベントを取得できましたが、マウスのドラッグ以外による移動まで検知してしまうので
できれば使いたくありません。簡単な方法がありましたらお教えいただきたくお願いします。
public class Test
 extends JFrame
 implements MouseMotionListener
{
 public Test()
 {
  ...
  addMouseMotionListener(this);
 }
 public void mouseDragged(MouseEvent e) { ... } //[A]
 public void mouseMoved(MouseEvent e) { ... } //[B]
}
0118営利利用に関するLR審議中@詳細は自治スレへ
垢版 |
2012/04/06(金) 18:51:29.84
>>117 で質問したものです。挙動がおかしかったのはマルチディスプレイ・
マルチワークスペースという少し特殊な環境でテストしていたからのようで、
普通の単一スクリーン上でテストしたところ期待通り動いていました。
現在 HyerarchyBoundsListenerを使っていますが、ComponentListener の
componentMoved() でも良さそうです。マルチ・ワークスペースに対応する
ように修正することにします。うまくいかなかったらまた質問させてください。
0119営利利用に関するLR審議中@詳細は自治スレへ
垢版 |
2012/04/07(土) 16:01:05.53
http://orablogs-jp.blogspot.jp/2012/02/mpeg-4-multimedia-support-in-javafx.html

2012年2月10日
[JavaFX] MPEG-4 multimedia support in JavaFX
JavaFX 2.1で、H.264/AVCビデオとAdvanced Audio Coding (AAC)オーディオを含むMPEG-4マルチメディアコンテナフォーマットで格納されているデジタルメディアの再生をサポートしました。
この新しい機能は、JavaFXのサポートされているすべてのOS(Mac OS X、Linux、Windows XPとVista (32bit) 、およびWindows 7 (32/64bit)を含む)全体で動作します。
実際のオーディオおよびビデオのデコーディングは、OS固有のメディアエンジンに依存していますが、
JavaFXのメディアフレームワークは、これらのネイティブエンジンでサポートされているすべてのマルチメディアコンテナフォーマットと、メディアのエンコーディングを処理しようとしているわけではありません。
(*) JavaFX 2.0は既に以下のメディアフォーマットをサポートしています。
音声:MP3、非圧縮PCMを含むAIFF、非圧縮PCMを含むWAV
動画:VP6ビデオを含むFLV、MP3オーディオ
0120デフォルトの名無しさん
垢版 |
2012/05/13(日) 07:58:23.99
日経ソフトウェアの2011年9月号に載ってた
Android用の静止画をモザイク処理するプログラムを
PC用のJava SEにJavaの部分とJNIを使ったC言語の部分だけ移植してみたんだが
64bit版のJava SEと32bit版のJavaSEでかなり性能が違うな
計測に使ったOSは64bit版Windows 7 SP1でCコンパイラはWindows SDKのを使用
CPUはCeleron G530定格


               初回実行時              2回目実行時
            java     C言語           java      C言語
32bit        36ミリ秒   16ミリ秒         29ミリ秒     16ミリ秒
64bit        25ミリ秒   12ミリ秒         8ミリ秒      12ミリ秒

64bit版のJava SEは-versionでバージョン表示するとJava HotSpot(TM) 64-Bit Server VM、
32bit版のJava SEは-versionでバージョン表示するとJava HotSpot(TM) Client VMと出ますが
1度実行した部分の実行速度がかなり違うようです
0121デフォルトの名無しさん
垢版 |
2012/05/13(日) 08:44:11.60
もっと大きい静止画(4000x4000ピクセル)で試してみた

               初回実行時              2回目以降実行時
            java     C言語            java        C言語
32bit        274ミリ秒   133ミリ秒         244ミリ秒     133ミリ秒
64bit        87ミリ秒    100ミリ秒         65ミリ秒      100ミリ秒
0122デフォルトの名無しさん
垢版 |
2012/05/13(日) 13:41:17.35
マイナーアップデート毎にもデフォルトで有効になってる最適化オプション違うんでjreのバージョンも書いてくれ。
0123120
垢版 |
2012/05/13(日) 16:12:01.36
java version "1.7.0_03"
Java(TM) SE Runtime Environment (build 1.7.0_03-b05)
Java HotSpot(TM) Client VM (build 22.1-b02, mixed mode, sharing)

java version "1.7.0_03"
Java(TM) SE Runtime Environment (build 1.7.0_03-b05)
Java HotSpot(TM) 64-Bit Server VM (build 22.1-b02, mixed mode)
0124デフォルトの名無しさん
垢版 |
2012/05/13(日) 16:24:12.66
>CPUはCeleron G530定格

エンコードなど高負担のときなどにも日常的にOCしてるんですか?
0125120
垢版 |
2012/05/13(日) 17:21:55.86
64bit版でJavaよりJNIを使ったCの処理が遅いのは
JNIで画素数分の巨大なint型配列を引数として渡しているので
おそらくJNIのインターフェースのオーバーヘッドによるものだと思います
0126デフォルトの名無しさん
垢版 |
2012/05/14(月) 08:25:48.39
>>123
32bitと64bitの違いよりも、Client VMとServer VMの違いの方が大きいと思うよ。
32bitもServer VMで動かしてみな。
0127デフォルトの名無しさん
垢版 |
2012/05/15(火) 04:33:07.64
>>123
>>122のときは-XX:+PrintFlagsFinalオプション使うんだ。
レスポンスの話なら7u4にするとG1 GC使えるからもっと良くなるよ。

client VMってまだあったんだ。
0128デフォルトの名無しさん
垢版 |
2012/05/15(火) 06:05:04.35
実行速度を優先したい場合は
32bit版のJavaでは-server オプションを指定するといいってことか
0132デフォルトの名無しさん
垢版 |
2012/05/20(日) 04:49:33.30
-server付けるとメモリ喰われて嬉しくないデメリットは有るんじゃないの?
鯖なら速度重視でメモリ積んどけでいいけど、クライアントpcでメモリ増やせってのはなかなか言えないかもしれない。台数多かったりするし。
0134デフォルトの名無しさん
垢版 |
2012/05/30(水) 18:32:42.02
>>133
存在するけど機能しないオプションは通知なしに無視されるからデフォ設定で起動してたんじゃね?
オプションの通知周りはu4で変更入ってたと思う。
0135デフォルトの名無しさん
垢版 |
2012/06/18(月) 16:46:49.63
ここ数年内に標準的なディスプレイの解像度が一気に3倍ぐらいうpするシナリオが
Retinaとかで結構現実味を帯びてきたわけだが、
Swingプログラマはどう立ち回っとけばいいの?

フォント周りはポイントサイズでの指定を徹底し、
ボタンやラベルやメニューを普通に使うぶんには
JRE側でなんとかdpiを吸収してくれるのかな…
0136デフォルトの名無しさん
垢版 |
2012/06/18(月) 22:34:21.60
超解像度が必要になってくるのは家庭用の4KやQFHDなビデオソフトが出てきてからだろう。
WUXGAでたりないなら数枚並ばれば間に合う。いままでにWUXGA以上が出てるのに普及しなかっただろ。
0138デフォルトの名無しさん
垢版 |
2012/06/19(火) 13:18:19.23
4KとかWUXGAとかは画素数の話で、DPI関係なくない?
JUDEのウィンドウ実寸が1/3とかになったら目にきついからUML引退するっ
0139デフォルトの名無しさん
垢版 |
2012/06/20(水) 03:58:47.30
>>138
デスクの上に置くのに26インチ以上は無理があるだろうから今後は画素数だけ上がってDPIが大きくなるよ。
ノートやタブレットだとなおさら。
0141デフォルトの名無しさん
垢版 |
2012/07/04(水) 00:24:30.02
1968年だね
0142デフォルトの名無しさん
垢版 |
2012/07/04(水) 02:06:44.22
Na na na, na-na-na-na, na-na-na-na
0144デフォルトの名無しさん
垢版 |
2012/07/04(水) 09:38:10.55
もう世の中アプリというアプリはみんなHTML5/CSS3でデザインするんだ
Swingはもう完全に役目を終えたよ ご苦労さんでした
0145デフォルトの名無しさん
垢版 |
2012/07/04(水) 09:47:14.41
JavaFX2.0はXMLだっけ?
HTMLにしとけばいいのに。
0149デフォルトの名無しさん
垢版 |
2012/07/04(水) 10:42:47.34
>>146
ttp://gihyo.jp/magazine/wdpress/archive/2012/vol69
Comparators ── 比べてみればわかること
【第2回】マークアップ vs. ツリー
0151デフォルトの名無しさん
垢版 |
2012/07/04(水) 11:18:04.38
>>146
以前からやってたマイクロソフトやアドビはしかたないけど、
HTML5の仕様がほぼ固まったあとに新たに違うものを覚えさせるより、
それに乗っかったほうが楽じゃなかったのかなと思うよ。
マイクロソフトはMETROではそうするんだろ。
0152デフォルトの名無しさん
垢版 |
2012/07/04(水) 11:45:09.58
>>151
正直domをJavaScriptみたいなクソ言語でゴリゴリいじるとかやってらんないんだけど
それだけならまだいいけどサーバに問い合わせに逝くところ以外全部jsで書けと?
変数のスコープぐらいなんとかしてほしい。。。

別にHTML5絶対反対とか言わないよ
仕事で勉強しているし
押し付けられてもうざいだけ
0153デフォルトの名無しさん
垢版 |
2012/07/04(水) 12:14:01.48
でも、クライアントアプリのGUIデザインで使うJavaScriptなら
まともなクラスも、letによるまともなスコープもある最新のJSが使えるだろうし
ブラウザで動くんじゃないから、ブラウザ非互換も考えなくていいし
そこまでうんこじゃないんじゃないか
0154デフォルトの名無しさん
垢版 |
2012/07/04(水) 12:14:28.28
>>151
HTMLで出来る事だったらそれで良いかもしれない。

だがねHTMLタグにはコンポーネントの場合どうするの?
例えばchartとか。
タダのcanvas置いといてidにそれらしい名前つけるとか、
divタグにnamespaceで特殊属性とか付けてる方が理解不能になるよ。

Adobeだって独自XMLだが、見た目はCSSで定義可能だよ。

Webアプリに関しても結局テンプレートエンジンとかが必要になるしな。
Wicketとかは素のHTMLに独自属性だから一番近い感じになるだろうけど。
XMLCだと画面はHTMLで書けるが、サーバ側でごりごりDOM操作しなきゃならんし。
0155デフォルトの名無しさん
垢版 |
2012/07/04(水) 12:34:27.60
htmlより抽象化された構文のxmlの方が画面の構造定義しやすいし
Controllerのクラスにバインドして簡単にハンドリング出来る

とは言ってもスマホのブラウザあたりからいじれるhtmlメインのアプリの利便性は否定しないよ
専用ランタイム要求する時点で相当敷居があがる
昔みたいなFlashしかなかった時代じゃないし

でもJavaScriptほどウンコな言語もそうそう無いと思う
0156デフォルトの名無しさん
垢版 |
2012/07/04(水) 12:59:54.27
JavaScriptはうんこだとしても、flashの方がいいって思ってるのか?
つーか、ブラウザは普通に他の言語でも動くようにすればいいだけだと思うが。
0160デフォルトの名無しさん
垢版 |
2012/07/04(水) 14:18:24.55
>>156
AS3はJavaScriptより良いと思う。
よりJavaに近いからそう思うだけかもしれないが。

>>159
ゲーム系死滅するからFlash死滅は困る
0162デフォルトの名無しさん
垢版 |
2012/07/04(水) 15:05:16.87
>>161
OpenGLをWebに持って来たって感じだから、素でも使える人間なら使えるんじゃない?
まぁ、普通無理。

なんで結局ライブラリを使うわけだが、それでも3Dの素養が必須。
使えるブラウザ及びOSなら描画最速。(ハードウェア支援があるから当然と言えば当然)
Canvasに素で書くより、ライブラリ経由してでもWebGL使った方が速いらしい。
最終的にはCanvasに描かれるんだけどね。

インタラクティブなもの、例えば地図を立体的に描く場合とかに有効だろうけど、
ゲームとかに使う場合、JavaScriptをオブファスケータとかに掛けないと
すぐ中身見られるしあんまり美味しくないと思う。
画像データとかも保護されないし。
swfはそういう実行物のパッケージングとしては優秀だったと思う。

0165デフォルトの名無しさん
垢版 |
2012/07/04(水) 18:17:34.65
Flashがデスクトップのゲーム用にフォーカスすることになって
立ち位置がますますかぶるDirectorの将来がヤバい
0166デフォルトの名無しさん
垢版 |
2012/07/04(水) 22:22:40.06
>>164
スマホで金になりそうなのはアプリしかないでしょってことで、
アプリ制作にフォーカスしてランタイム作りますって事だと思う。
簡単な紙芝居とかだったら今まで使ってきたツールで作れて、
iPhone,Android両対応出来ますぜと。

マウスが存在する従来環境であれば今まで通りでいいんだろうけど、
タッチインターフェースはまるで違うからね。
インタラクティブってこうやればとか思ってた部分が根本的に変わるから。
0172デフォルトの名無しさん
垢版 |
2012/07/06(金) 09:50:58.74
アポーがアップデート配信タラタラするからだろ
別に堅牢なOSでもないのにウィルス対策入れてないの多いし
0173デフォルトの名無しさん
垢版 |
2012/07/07(土) 18:08:51.57
>>171,172
友人が先祖代々信者だがそういう連中はそういうの分かり切っててmacだからで諦めてるよ。
あれが出来ねーとかごちゃごちゃいってるのはにわかだから生粋の信者は文句ないらしいぞ。
開発するならwindowsとか言ってたし。
0176デフォルトの名無しさん
垢版 |
2012/08/16(木) 19:37:15.63
アプレットでjava7に切り替えた途端、ネットワーク接続が以下のエラーで失敗するようになりましたが、
アップデートで何か気にしなければならないことはあるでしょうか?

Caused by: java.net.SocketException: Permission denied: connect

at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source)
at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source)
at java.net.AbstractPlainSocketImpl.connect(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at org.apache.commons.httpclient.protocol.DefaultProtocolSocketFactory.createSocket(DefaultProtocolSocketFactory.java:79)
0179デフォルトの名無しさん
垢版 |
2012/08/26(日) 00:18:35.58
JavaFXの姉妹スレはC++さんに荒らしされてるのでこっちでお聞きします。
metalがまだsteelのころに、metalworksだったかのサンプルでcolorがred,greenなど全体の印象を変更できたのですが、metal laf (steel,ocean)の時にそれらカラーなどをSystem.setPropertyなどのプロパのセットのやり方だけで設定することは出来ませんか?
0181デフォルトの名無しさん
垢版 |
2012/08/29(水) 09:57:43.43
Containerクラスの以下のメソッドで、マウス下の部品を取ろうと思っていますが、
コンボボックス、テキストボックス、JTabbedPane、JScrollPaneなどは取れますが、ラベルがどうしても取れません。
なにかいい方法はないでしょうか?

Component getMouseEventTarget(int x, int y, boolean includeSelf) {
0183デフォルトの名無しさん
垢版 |
2012/09/10(月) 08:01:46.88
WindowsのネイティブアプリからSwingアプリにドラッグアンドドロップすると
ネイティブアプリ固まるようになってね?

Swingアプリを終了するまでネイティブアプリ操作できないし
ネイティブアプリ領域にマウスポインタもってくとアイコンがドラッグアンドドロップ状態のままだから
ドラッグアンドドロップの終了処理がないとかのミスだと思うが。
0185デフォルトの名無しさん
垢版 |
2012/10/05(金) 13:09:24.80
パネルの指定した座標上にある最上位の部品を判断する方法はありますか?

これの逆ギャックっぽいものを探しています。
SwingUtilities.getDeepestComponentAt
0187デフォルトの名無しさん
垢版 |
2012/10/08(月) 16:46:15.51
JTextArea のインスタンスについては setBackground(色) を使って普通に背景色を
設定できるんだけどなぜか JTextPane のインスタンスには同じ方法で設定できません
(デフォルトの白のまま) 考えられる問題点とか対処方法について情報があったら教えて
0189デフォルトの名無しさん
垢版 |
2012/10/08(月) 22:55:03.75
>>187
背景色指定されたHTML文書読ませた、とか?

うちでは引数なしコンストラクタで生成したJTextPaneに
setBackground()で背景色指定したら反映された。
0190デフォルトの名無しさん
垢版 |
2012/10/09(火) 01:18:03.21
>>189
読み込ませたのは通常のプレーンテキストです。単純な
ttp://www.johnloomis.org/cpe101/notes/SwingGUI/JTextPane/diagnostic.html
みたいな場合は問題なく背景色が設定されるんだけど少し複雑な構造になっているので
おかしなことをやっているのかもしれない。JTextPaneの場合には色の設定方法にコツが
いるみたいなのでJTextAreaへの変更も含めてもう少し検討します。どうもありがとう
0191デフォルトの名無しさん
垢版 |
2012/10/16(火) 20:03:04.79
ボタンを押すと、GUIが配置される仕組みにしています。
JButtonやJLabelなどはこれができるのですが、JTabbedPaneだけ表示されません。
JTabbedPaneは何か特殊な仕様になっていますか?
0192191
垢版 |
2012/10/16(火) 20:22:27.77
自己解決しました
それぞれのタブを全部可視化しなきゃならんのか
0193デフォルトの名無しさん
垢版 |
2012/10/17(水) 15:21:36.51
Javaアップデートの準備ができました?
って疑問形でタスクバーに表示されたけど、こんな風な聞かれ方だっけ?
0195デフォルトの名無しさん
垢版 |
2012/10/17(水) 21:37:46.74
( ´_ゝ`)フーン・・・ 
Σ (゚Д゚;)マジ?
念のため無料のアバストで全てのファルをウイルスチェックしましたが大丈夫だったぽいです。
0196デフォルトの名無しさん
垢版 |
2012/10/23(火) 12:06:01.13
public class main extends JApplet{

public void init(){
JButton
画像の描画スレッド
}

public void run(){
描画スレッドの中身
repaint();
}
public void paint(Graphics g){}
}

画像を描画しながらJButtonを前面に表示するにはどうやれば良いですか?
また、初期状態でJButtonが表示されずにマウスポインタをオーバーさせたら表示されます。これはどうしてですか?
0197デフォルトの名無しさん
垢版 |
2012/11/10(土) 13:03:50.56
Swingやって、金もうけられた人っているの?
0198デフォルトの名無しさん
垢版 |
2012/11/10(土) 18:45:49.52
2000年付近の数年はイントラ向けアプリでボロ儲けではないけど普通に。
今も仕事自体はあるけど段々他プラットフォームに移行してる
0199デフォルトの名無しさん
垢版 |
2012/11/10(土) 21:12:45.77
2000年っていうと、いわゆるWeb系の超初めのころだね。Strutsとかまだなかったんだよな・・
0200デフォルトの名無しさん
垢版 |
2012/11/10(土) 21:17:24.91
サーブレットとJSPとJavaBeansで頑張ってた頃。
0201187
垢版 |
2012/11/10(土) 23:05:00.63
単純にJTextAreaへの参照が正しく貼られていなかったのが原因でした
>>189さんありがとう
0202デフォルトの名無しさん
垢版 |
2012/11/11(日) 00:05:04.05
軽量の意味はOSの機能を使っていないという意味なんですよ。
速いという意味ではないんです。

だから、Swingは十分高速なんです。
0203デフォルトの名無しさん
垢版 |
2012/11/11(日) 00:08:35.83
誰に対するレス?
0204デフォルトの名無しさん
垢版 |
2012/11/11(日) 12:46:19.72
今のスレタイに落ち着いた経緯をご存知ないということでしょう
0205デフォルトの名無しさん
垢版 |
2012/11/20(火) 21:02:14.53
JAVAFX2ってJRE7に入ってる?
0206デフォルトの名無しさん
垢版 |
2012/11/21(水) 03:12:10.97
JavaFXスレと分離しているのはなぜよ?
向こうはもう完全にFXスレにしてまえばえーやん
0212デフォルトの名無しさん
垢版 |
2013/11/13(水) 13:41:16.32
jtableの最終行の色を変えたいのですが
どうすればいいでしょうか?
getRowcount()でレコード数がわからると思うのですが、そのあとがわかりません。
0214デフォルトの名無しさん
垢版 |
2013/11/13(水) 14:36:50.41
>>8って実は最近人気のフラットデザインなんじゃね!?
0215デフォルトの名無しさん
垢版 |
2013/11/13(水) 19:55:01.89
>>213
でした
0219デフォルトの名無しさん
垢版 |
2014/01/14(火) 01:14:59.46
JavaFX8は今年中には出る!

はず。。
0222デフォルトの名無しさん
垢版 |
2014/01/17(金) 23:31:15.37
Swingは失敗したけど、FXは成功するでしょうか
みたいな議論はどのスレでやればいいのでしょうか?
0224デフォルトの名無しさん
垢版 |
2014/01/18(土) 03:15:28.42
JDK-6506617 : Keyboard-lock in swing program on Linux box
という重大なバグを8年以上たった今でも解決する気がないみたいだけど、
どうしてなんだろう。
0226デフォルトの名無しさん
垢版 |
2014/01/18(土) 03:26:41.27
オラクルはケチで有名なので文句を言われなければ手間暇かけて直そうとしないからですよ
0229デフォルトの名無しさん
垢版 |
2014/01/18(土) 16:54:18.07
YES.なぜならswingの領分で、他のコンポーネントにフォーカスを強制的に移して戻したら数回は直る。
そのときにクリックするなど一切せずLinuxへのメッセージはないからだ。
しかしクリックすれば確実に直る。
0230デフォルトの名無しさん
垢版 |
2014/01/18(土) 17:06:18.99
日本語入力の時に頻繁に発生するから最悪なんだよね
VBOXとかの仮想環境で古いリナックスを使うことが多いけどそのバグが原因でスイングあぷりを使う機会はまずないね
オラクルはウインドーズにしか投資しないつもりだからそのバグが直る見込みは絶対ないよ
0231デフォルトの名無しさん
垢版 |
2014/01/18(土) 23:06:20.34
>>230
ネイティブ環境(非仮想環境)だと出ないん?
まあ、仮想環境でもキーを連続で打てないのは痛いけど。
ちなみに、バグレポートではキー押しっぱなしが再現方法になってるけど
日本語入力だと、どうすると出てる?
0232デフォルトの名無しさん
垢版 |
2014/01/19(日) 00:03:12.21
ubuntu 6.06 ltsだったけど実機でもよく出るよ
再現方法が少し違うから違うバグだろうけどx-window関連だから多分同じバグだろう
特にESCでダイアログを閉じたときフォーカスが戻って来ないのでキー入力がアスキーでも日本語でもテキストが入力されないバグだったかな
ショートカットも効かなくなるからマウスでアプリを終了するしかない(再起動すれば最悪また戻る)
このバグはぐぐると英語サイトがいつくかヒットするけど、swingのアプリは実質ウインドーズ専用と考えたほうがいいだろうね
javafx8 (build 1.8.0-ea-b117)ももうするリリース近いのにubuntu 12.04では日本語入力がまともじゃないからjavafx8も結局ウインドーズ専用になると思う
0233デフォルトの名無しさん
垢版 |
2014/01/29(水) 20:55:21.39
JavaFX jarファイルに固めてダブルクリックしても起動しないんですが仕様ですか?
eclipseからは起動するのに
0235デフォルトの名無しさん
垢版 |
2014/01/29(水) 21:45:02.32
Swing、SWT、ともに起動します
何故かjre7.u45以前のVMを指定したらコマンドラインから起動できることを確認しました
jre7.u45以降のではコマンドラインからも起動できない
0236デフォルトの名無しさん
垢版 |
2014/02/02(日) 19:56:24.94
Swingや選んだのは失敗であった 日本語入力するときが不自然すぎる
JavaFXもくそすぎわろた 同じように日本語入力が不便
せめて SWT を選んでおくべきだった・・・
0238デフォルトの名無しさん
垢版 |
2014/02/03(月) 10:45:06.38
OSXは知らないけど、WindowsではGoogleIME使ったときが、入力候補の出る場所がおかしい。
ウィンドウの左下に出る。普通、カーソルのすぐ下に出るだろう。
0240デフォルトの名無しさん
垢版 |
2014/02/04(火) 04:53:44.83
>>230
java 1.6 のソースコードを見るとログを仕掛けてなおそうと頑張ってた形跡がある。
そのログを見たいなら以下で取得可能。
public static Logger focusLog = Logger.getLogger("java.awt.focus.Component");

>>231
キー押しっぱなし→?
Textボックスをマウスクリックでたまにキーフォーカスが死亡する。
0241デフォルトの名無しさん
垢版 |
2014/02/04(火) 10:17:13.08
ubuntu12.04+ibus+mozcですが、たまにテクストコンポーネントがキー入力を受け付けず、ascii,日本語とも入力できなくなる時が今でもありますよ
しかもnetbeans7使っていても発生するのでswing,javafxを検討してみたり勉強しようと考えないほうがいいと思いますよ(java+linuxではそれぐらい終わってるバグです)
ケチで有名なオラクルの技術力なんてのは企業買収で成り上がっただけなので底力なんてあるはずもなく実力は所詮こんなものです
0242デフォルトの名無しさん
垢版 |
2014/02/04(火) 13:10:42.52
java.awt.im とかちゃんと使ってる人いるのか?

Javaプログラマが日本語入力監視してやらないと、
入力バリデーションとかが期待通りに動かないことがまれによくある。
0243デフォルトの名無しさん
垢版 |
2014/02/04(火) 19:22:33.47
java1.6以上のJTextAreaなどJTextComponentのline-wrap方式は、
奇妙な位置で折れます。
これを1.5以下の方式に戻す方法があるか教えて下さい。
0245デフォルトの名無しさん
垢版 |
2014/02/04(火) 23:06:29.04
>>243
奇妙な位置で折れることを想定してプログラム書けば全て解決する話
それよりもそのことのためだけに今更1.5以下のJRE使えという方が非常識
0249デフォルトの名無しさん
垢版 |
2014/02/04(火) 23:48:22.66
サンの時代ならまだ信用があったから起死回生もありえたけど、クライアント(ウェブ)やモバイルやデスクトップに興味がない今のオラクルじゃ何やってももう無理
0250デフォルトの名無しさん
垢版 |
2014/02/05(水) 00:31:55.09
>>246
てか、それ英単語の空白部分で折れてんじゃないの?
そもそもそんな不自然な折れ方するバグがあったとしたら世界中の開発者が黙ってないと思うんだがな
しかも1,6以上で出るんだろ?

もし英単語空白部分で折れてんなら、それline-wrapの仕様だよ
0251デフォルトの名無しさん
垢版 |
2014/02/05(水) 00:44:09.39
>>243
http://docs.oracle.com/javase/jp/7/api/javax/swing/JTextArea.html
> JTextArea(Document doc)
> 指定されたドキュメントモデルと、ほかの引数はすべてデフォルト (null, 0, 0) で、新しい JTextArea を構築します。

http://docs.oracle.com/javase/jp/7/api/javax/swing/text/Document.html
> たとえば、前の図のようにドキュメントのコンテンツが「The quick brown fox」というシーケンスの場合、「The」の前の場所は 0 で、「The」の後とそれに続く空白の間の場所は 3 となります。
0254デフォルトの名無しさん
垢版 |
2014/02/07(金) 10:00:31.04
GUIレイヤーにはHTML5/Google Chromeを使えばすべて解決
0260224
垢版 |
2014/02/24(月) 00:48:36.27
なんかopenjdkにしたら直ったくさい。
CentOS(32bit) jdk1.7からopenjdk1.7にしたらOK
Debian(64bit) open1.6でOK
0263デフォルトの名無しさん
垢版 |
2014/02/24(月) 04:35:27.92
jdk1.7でもawtのテキスト・コンポーネントってawt.useSystemAAFontSettings=onにしても汚いままだね
java+linuxはやっぱり終わってる
0264デフォルトの名無しさん
垢版 |
2014/02/24(月) 04:43:32.62
テキストじゃなくてリスト・コンポーネントだったか?
とにかくオラクルはawt component全般で直す気もなければやる気ないんだから、awt,swing,javafxでguiをやろうと考えるのは茨の道に入るのに等しい
0267デフォルトの名無しさん
垢版 |
2014/02/24(月) 05:24:53.45
linuxデスクトップですらまともに使えないjava+awt+swingなんてのは結局のところwindows専用のguiフレームワークでしょ
ていうかjavaがサンだった頃はまだ可能性はあったが、オラクルになったjavaってのはwindowsデスクトップともども静かに死んでいく運命でしかない
awt,swing,javafxなんていうデスクトップやクライアントものは誰も相手にしないから、バグなんかもわざわざ報告してもらえるはずない
0268デフォルトの名無しさん
垢版 |
2014/03/01(土) 01:05:24.52
JavaでGUIは諦メロンってこと?
0270デフォルトの名無しさん
垢版 |
2014/03/01(土) 11:02:45.58
androidの寿命が思いの外長いみたいだから、embbed,mobileのjavafxのライセンスは主要なところはどこも買わないだろう
オラクルが欲を出して裁判でグーグルに負けたあたりから、javaはswing,javafxが低速低品質であるだけでなく、desktop/client java自体が終息していたんだなあと思う
0271デフォルトの名無しさん
垢版 |
2014/03/06(木) 23:38:19.81
Product Version
JavaFX Scene Builder 2.0 (Developer Preview)

Build Information
Version: 2.0-b12, Changeset: 8bb7f8e4931d
Date: 2014-01-30 08:10

JavaFX
Toolkit = QuantumToolkit
Pipeline = ES2Pipeline
Hardware acceleration ENABLED

Java
1.8.0-b127, Oracle Corporation

Operating System
Linux, amd64, 3.2.0-58-generic

Copyright ? 2012, 2014, Oracle and/or its affiliates. All rights reserved.
0272デフォルトの名無しさん
垢版 |
2014/03/06(木) 23:41:36.02
?
0273デフォルトの名無しさん
垢版 |
2014/03/20(木) 02:50:24.55ID:Dwbkcjyh
JavaアプレットとWeb Startの実行方法

【重要】Java SE 7がアップデートされました。(開発者の方々へ注意事項があります!) (Oracle Technology Network Japan Blog)
https://blogs.oracle.com/otnjp/entry/java_se_7%E3%81%8C%E3%82%A2%E3%83%83%E3%83%97%E3%83%87%E3%83%BC%E3%83%88%E3%81%95%E3%82%8C%E3%81%BE%E3%81%97%E3%81%9F_%E6%9B%B4%E6%96%B0%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6%E3%81%AE%E6%B3%A8%E6%84%8F%E3%81%A7%E3%81%99

【Java 7 u51 関連情報(1)】Java 7 Update51におけるRIAの新しいセキュリティ要件について (Oracle Technology Network Japan Blog)
https://blogs.oracle.com/otnjp/entry/java_7_u51_update_info

【Java 7 u51 関連情報(2)】 最新のセキュリティ要件に満たないRIAを使用し続けるには (Oracle Technology Network Japan Blog)
https://blogs.oracle.com/otnjp/entry/java_7_u51_update_info1
0274デフォルトの名無しさん
垢版 |
2014/03/25(火) 20:16:58.47ID:EkLc5i6x
もはや一般向け言語じゃないな。
アプレット開発完全に終わった。
ユーザーにコピペ作業させないと動かないフリーソフトって有り得ないだろwww
0276デフォルトの名無しさん
垢版 |
2014/03/25(火) 20:41:11.51ID:Cg1gJGGQ
何の改善?
0277デフォルトの名無しさん
垢版 |
2014/03/26(水) 13:26:32.54ID:/SzdNL7d
>ユーザーにコピペ作業させないと動かないフリーソフトって有り得ないだろwww
これって何のこと?
開発者側じゃなくて?
0278デフォルトの名無しさん
垢版 |
2014/05/24(土) 18:00:09.56ID:s77vKR9N
JavaFXで2chブラウザで作ってみたけどかなりシンプルで扱いやすいライブラリになってて気に入った
これはSwingとかは簡単に駆逐される予感がする
0280デフォルトの名無しさん
垢版 |
2014/05/25(日) 15:08:12.27ID:fgB99N7B
今出向先でswing使わされてるけど糞すぎて死にたい
sdkも1.4使ってるし、いるのか知らんけど
まともなアーキテクトいないと自社内で技術の選定もできねーんだなぁと
0281デフォルトの名無しさん
垢版 |
2014/05/25(日) 17:00:26.35ID:wt2IlQqA
JavaFXはまだま未熟な印象あるけど相当使える
JavaDocとか見てると3Dとかスマホを意識したメソッド名が散見されるけど、
今後クライントアプリで存在感示せるには十分、強力なライブラリだと思うな
0282デフォルトの名無しさん
垢版 |
2014/05/25(日) 20:00:03.93ID:gGsDT7q8
寝言はダイアログ出るようになってから。
0284デフォルトの名無しさん
垢版 |
2014/05/26(月) 21:39:44.64ID:6NIvWi/X
ダイアログ的なものなんか簡単に実装できるもんじゃないの
0285デフォルトの名無しさん
垢版 |
2014/05/27(火) 00:12:04.84ID:KunvKdT5
画面の中央で手前に表示されるか
Enterをおしたら、閉じて、OKの意味を伝達するか
Escをおしたら閉じるか
Tabをおしたら、フォーカスが移動するか
0286デフォルトの名無しさん
垢版 |
2014/05/27(火) 19:53:40.91ID:cWYkCy8V
ダイアログってそんなややこしい仕様だったの?
ちっさなStageにボタンつけてモーダルで表示するだけだと思ってた
だからみんなダイアログ実装しろしろうるさいんだな
0287デフォルトの名無しさん
垢版 |
2014/05/28(水) 01:48:13.83ID:OK3F3yBj
プラットフォームによってメタファが違うしライブラリが勝手な解釈して実装がカオスだったりもする
0288デフォルトの名無しさん
垢版 |
2014/05/30(金) 08:18:31.99ID:Vam9HZwb
ダイアログって出されて嬉しかった記憶がまったくないから
もうダイアログは出しちゃダメっていう決まりでいいだろう

そういうダイアログメッセージメッセージ出す前にボタン押させないようにするとかいろいろあるだろ
0289デフォルトの名無しさん
垢版 |
2014/05/31(土) 02:52:40.72ID:xSX677mx
SwingどころかAWTですら実装しているというのにFXときたら…
0290デフォルトの名無しさん
垢版 |
2014/05/31(土) 23:57:54.57ID:VVLnctcP
WPFだって事実上実装してないに等しいので、
「FXはダイアログとか出さない!」
というコンセプトなのでは。
0291デフォルトの名無しさん
垢版 |
2014/06/01(日) 09:26:14.34ID:4S9X/ypc
RIA の方向性がそうなのかもな。
htmlからリッチにするとは言ったがそれはviewにおける表現の事であって云々。
0294デフォルトの名無しさん
垢版 |
2014/06/03(火) 01:36:53.99ID:tSzMhKYs
モーダル・ウィンドウ作れるからダイアログ要らんがな。
実装面倒くさいだけならJFXtrasにひと通りのもんは入ってる。
0296デフォルトの名無しさん
垢版 |
2014/06/05(木) 01:57:53.52ID:nlfx3mRB
日本では処理が軽いか重いかっていうイメージで間違った使われ方してるけど
heavyweightが環境依存の重いコードガシガシ書くことでlightweightが環境非依存の軽いコード書く事だから本来はコードのポータビリティの話だろ。
会話するとき、間違った使い方してる奴が混じってると会話が噛み合わんってよくあるじゃん。
0297デフォルトの名無しさん
垢版 |
2014/06/05(木) 09:33:27.44ID:LxkIoIzb
swingだろうとトップウィンドウがheavyになるって話も実際どこまで理解されてるのだろうね。
0301デフォルトの名無しさん
垢版 |
2014/06/08(日) 23:13:30.68ID:VGKSCbCi
>>298
だれが呼んでんの?
0304デフォルトの名無しさん
垢版 |
2014/06/10(火) 01:56:39.99ID:Jj/OWP2h
javafxはMVPでもpresenter modelでもどっちでも作れるようになってるからcontrollerがpresenterっていう名前だったらおかしいだろ。
それと役割が同じだからじゃね。
0305デフォルトの名無しさん
垢版 |
2014/06/10(火) 09:00:43.43ID:Kv8wJJLO
署名高すぎ。
なんだよ年5万円って。
趣味でやるなってことか?
0306デフォルトの名無しさん
垢版 |
2014/06/10(火) 09:45:29.98ID:Ek/hO52F
相模原メディカルサイト歯科日吉サンテラス歯科藤沢なのはな内科スマイル歯科アイ整形外科亀有 リリオ歯科アクロスみなみの歯科足立ハート歯科新宿くろさか歯科熊本ファミリー歯科伊勢原桜台歯科森林公園滑川モール歯科横浜いちょう歯科小田原めぐみ歯科ホワイトスタイル
0307デフォルトの名無しさん
垢版 |
2014/06/10(火) 14:03:26.44ID:qiio5ghQ
質問失礼します。
JTabbedPane に複数の Panel を登録すると、キーボードのカーソル左右でタブを切り替える事ができます。
この機能を無効化したいのですが、どうしたら良いでしょうか?
0309デフォルトの名無しさん
垢版 |
2014/06/10(火) 23:04:00.57ID:qiio5ghQ
>>308
フォーカスは与えたいので少し厳しいですね。
左右で変えられるのは仕様として別のやり方でやってみます。
ありがとうございました。
0310デフォルトの名無しさん
垢版 |
2014/06/11(水) 01:52:47.28ID:mdVLbosv
カードレイアウト使ってタブはボタンかラベルでそれっぽく書けくのは?
JavaFXだとStackPane使うんだけどSwingには相当するものがないね。
0312デフォルトの名無しさん
垢版 |
2014/06/28(土) 02:44:47.94ID:8qn5Q6Kh
へんな2chブラウザみつけた
JavaFXで実装してるんだと
http://www.m9_www.com
使ってみたけど結構重い
0314デフォルトの名無しさん
垢版 |
2014/07/01(火) 00:34:52.96ID:l5LYMUhe
>>313
なにこれキモい
0318デフォルトの名無しさん
垢版 |
2014/07/01(火) 00:47:21.29ID:t5KNleFu
片山ゆうちゃんとかいう奴の事件が2chにリンク貼ってダウンロードさせるのが目的だったじゃn
0321デフォルトの名無しさん
垢版 |
2014/07/01(火) 01:02:31.27ID:l5LYMUhe
>>315
サイトが緑一色できもい
0322デフォルトの名無しさん
垢版 |
2014/07/01(火) 01:08:07.73ID:TY9SsTx2
>>321
どうでもいい所にツッコんでるなー。
どうせなら、サイトの一番下にコメント書けるようになってるみたいだから、
「背景を別の色にしてください」
って作者さんにリクエストすればいいんでない?
0324デフォルトの名無しさん
垢版 |
2014/07/01(火) 01:23:12.00ID:l5LYMUhe
>>322
書いてきたwww
0327デフォルトの名無しさん
垢版 |
2014/07/01(火) 19:55:40.58ID:l5LYMUhe
>>313
そっさく更新されててワロタwww
しかも背景ちょっと色が薄くなっただけ
0328デフォルトの名無しさん
垢版 |
2014/07/01(火) 22:33:31.10ID:0gnxeu7b
作者さんいい奴ぽいな。他人事だと思って軽い気持ちでコメント書けばって言った俺ちょっと反省。
0329デフォルトの名無しさん
垢版 |
2014/07/04(金) 10:20:14.34ID:ki/Hrv71
タイトルバーを独自に描画しないと、FX使っても
カッコ悪いアプリしかできないね。
0330デフォルトの名無しさん
垢版 |
2014/07/04(金) 15:13:09.85ID:2BEMuw6w
俺も昔そう思ってたわ
「俺の考える最強のタイトルバー」をユーザは求めているのか?
どんなメリットやデメリットがあるのか?自己満足じゃないのか?
0331デフォルトの名無しさん
垢版 |
2014/07/04(金) 15:22:19.68ID:5DJegE4T
タイトルバーの色をラズベリーレッド・パールホワイト・ミッドナイトブラック
の中からお選びください
0332デフォルトの名無しさん
垢版 |
2014/07/04(金) 19:54:49.97ID:TeA8MqEy
野際陽子「Forte (for Java)」
0333デフォルトの名無しさん
垢版 |
2014/07/04(金) 19:56:48.86ID:TeA8MqEy
間違えた。

野際陽子「レディース・アートネイチャーより、Forte (for Java)登場しました。」
0334デフォルトの名無しさん
垢版 |
2014/07/04(金) 20:26:15.65ID:TdLiAOcG
今までSwingの標準Look&feelで書いていたプログラムをGTK+のLook&feelで動かそうと思ってmainの最初にUIManagerの命令を足しました。

見た目はしっかりGTK+化されているのですが、setBackgroundなどが機能せず、色が変更されません。
専用の命令が必要なのでしょうか?
0335デフォルトの名無しさん
垢版 |
2014/07/05(土) 00:21:13.32ID:77Vn7+/u
もっと楽にSwingでツール作る方法ないですか
0336デフォルトの名無しさん
垢版 |
2014/07/05(土) 10:02:16.54ID:NYv28J6g
setBackgroundしてから、repaint();で変わらない?
0338デフォルトの名無しさん
垢版 |
2014/07/05(土) 23:46:53.24ID:ZADZ7zV+
>>334
UIManagerとUIDefaultsとputClientProperty使えと何度言えば
軽量コンポーネントは描画してないっつーの。
それかJavaFX使え。CSS書けばそれで済むからSynthと違って本当にCSSだけでなんでもできるから。

テンプレに入れとけよこれ。
0339デフォルトの名無しさん
垢版 |
2014/07/07(月) 09:37:46.43ID:foVj13gH
JavaFXのメリットが良くわからん。
SwingのL&amp;Fを強化すれば済んだんじゃないのか?
substanceとか、syntheticaとかの外部ライブラリを使えば綺麗にできるけどね。
0343デフォルトの名無しさん
垢版 |
2014/07/08(火) 02:22:01.51ID:OOLRPQW0
>>339
・原則ソフト前提のswingとちがってH/Wアクセラレーション前提で動いてるとか
・ライブラリのスペースがswingと比べて超軽量とか
・Swingにないコンポーネントサポートしてるとかはnetiveな部分が関わってるからswingではできないしJNIでJAWT呼び出す以上糞重いし
・マルチスレッドで書いたつもりなのに謎のバグがあるし
>>334みたいなswingわかってない奴がどうやっても描画ぶっ壊せない設計になってるとか

LnFなんてメインテーマじゃない。

>>342
javafxはそんなもん目指してない。バリバリプラットフォーム依存してるしJAWTより薄いnativeで書かれてる。
そもそもRIAなんだからプレゼンテーション層はアプリケーションプログラマが書くからその下触らせないようにしてるからプラットフォーム独立なんて必要ない。
実装にクロスプラットフォームなライブラリ使ってるから移植性に問題もない。だから3dできるしwebブラウザあるし動画再生できるしOS依存の機能使える。

他にも山ほどメリットあるけどあげ出したらキリがない。

というか、SwingXのpainter APIをsunが諦めた時点でswing捨てるのは決まったようなもんだしjavafxにswing teamがsponsoredしてるからその内swingはメンテ終わる。
0344デフォルトの名無しさん
垢版 |
2014/07/08(火) 02:31:00.59ID:OOLRPQW0
あと
>外部ライブラリを使えば綺麗にできるけどね。
その外部のライブラリをJREに含めるはずだったSwingAppFrameworkがキャンセルされた後javafx2に移行したんだよ。
ほかにもSwingLabの成果は将来のSwingにマージするつもりだったけどこれもJXLayer以外キャンセル。SwingLabはSwingにおけるboostだからそこが解散したらもう未来はない。
javafxにおけるSwingLabに相当するコミュニティもすでにあるから移行する気まんまんだよ。
0346デフォルトの名無しさん
垢版 |
2014/07/10(木) 19:35:54.65ID:FVwx7uR4
JavaFXってWindow最大化判定ってできないの?
0347デフォルトの名無しさん
垢版 |
2014/07/12(土) 19:54:42.19ID:HYAbDDu5
Y_AXISに配置するBoxLayoutを設定し、maximumSizeを決めたJPanelの下にJTextPaneを設定すると、
JTexetPaneの右端まで文字が行っても改行してくれなくなってしまうのですが、これを改善する方法はありますでしょうか?
0348デフォルトの名無しさん
垢版 |
2014/08/25(月) 13:05:21.60ID:Hlfi2Pum
swing designerのような、GUIでウィンドウパーツを組み、ダイレクトにプログラムが書ける
EclipseのJavaFX2プラグインありませんか?
0349デフォルトの名無しさん
垢版 |
2014/08/27(水) 01:37:22.69ID:QfVKLTi4
>>348
それはどのIDEもSceneBuilderを組み込んでるからFXMLのポトペタ部分はどれも同じなのは知ってる上でeclipse固有の話?
それならIncubation projectになってるe(fx)clipseがある。
ほかのIDEとの違いはttp://www.coppermine.jp/docs/programming/2013/12/efxclipse.htmlが簡単に説明してる。
0351デフォルトの名無しさん
垢版 |
2014/08/29(金) 22:54:51.07ID:fnZeOk7J
ところでJava1.8+swingがデグレードだらけらしいんだが。

Java+Swingによる2chブラウザ V2C_R72
http://anago.2ch.net/test/read.cgi/software/1407868516/

416 2014/08/29(金) 11:52:21.44 ID:sik4QNGf0
名無しさん@お腹いっぱい。(sage)

V2Cが原因じゃなくて1.8.0_20のIME関連が死んでるっぽい。
jEditでも日本語入力しようとすると死ぬ。
ちゃんとテストしてからリリースしろよ。

java - Swing rendering appears broken in JDK 1.8, correct in JDK 1.7 - Stack Overflow
http://stackoverflow.com/questions/22737535/swing-rendering-appears-broken-in-jdk-1-8-correct-in-jdk-1-7

http://i.stack.imgur.com/zZwGe.png
The rendering of the Font seems to be not OK. Additionally the Button looses its Text, when i move my mouse over it.
0355デフォルトの名無しさん
垢版 |
2014/09/07(日) 16:03:02.49ID:5nNaVA+D
JavaFXスレが機能してないようなので、こちらで質問。
JavaFXでウィンドウがアクティブになったときに、イベントを発動させたいときはどうしたらいいのでしょう?
addFocusListenerに相当する機能が見つからなくて。
以下はSwingでのサンプルです。
ttp://2sen.dip.jp/cgi-bin/upgun/up1/source/up0607.zip

JavaFXのシーンビルダー2.0で探してみたけどよく分かりませんでした。
分かる人が居たらどうかお願いします。
0357デフォルトの名無しさん
垢版 |
2014/09/07(日) 22:40:43.72ID:A6PLBI8n
そこ前スレじゃないし。分けても人来なくて過疎って落ちるだけって前から言われてたのにテンプレも貼らずに立て逃げしただけ。
0358デフォルトの名無しさん
垢版 |
2014/09/08(月) 18:47:45.13ID:X3CXKHE7
>>351
そういうことだったのね
どうもSWINGで作ったアプリがJDK8に入れ替えたトタンに、JtextField上で日本語変換すると
アプリが落ちちゃうんだよなあ。
0359デフォルトの名無しさん
垢版 |
2014/09/08(月) 22:15:44.08ID:aXLsXs3S
それは、ひどい
0361デフォルトの名無しさん
垢版 |
2014/09/09(火) 08:18:05.49ID:fF7YNadH
>>360
Oracleがいかに糞なのかがわかる。
Googleも糞だが、2バイト語圏のテストなんてまるでしていないのがよくわかる。

Javaもそろそろ潮時かもな
0362デフォルトの名無しさん
垢版 |
2014/09/09(火) 09:07:08.70ID:N9PRwLzG
javafxのlinux platformへの対応が今でも後回しってことが根本的に間違ってる
java7(javafx2)がでた2011年の時点でも、javaseやjavafxがwindows platformで使えるメリットって全く無いでしょ
そういう要不要の判断ができないのは、優先順位や目的も設定できず、なんとなくで作ってたのが原因だろう
モバイルデバイス市場をグーグルに持ってかれちゃった時点でjavafxは廃止してとりあえず様子見でswingに集中すべきだったのにね

で、できたjavafx api/frameworkはswingと全く同じだし、それならswing apiを流用して内部実装だけ取り替えるという設計もあったんじゃないのかと思う
javafx9は現在のjavafx2/8のapiを全て破棄して、swingライブラリ一部として結合してほしいね(それぐらいのことしないとjavaのguiは使ってもらえないだろう)

ただ、グーグルはオラクル(サン)に比べれば名ばかりの貢献であって、長期的に実質的にはオープンソースに何らの貢献もしてないし,グーグルはオラクルを上回る大糞ってことは確かだ
0363デフォルトの名無しさん
垢版 |
2014/09/09(火) 10:36:53.39ID:N9PRwLzG
よくみたらJComponentの継承関係がjava.awtに依存してるからjavafxとswingを統合するのは無理か
それで考えてみたんだけど、javafxのui生成はfxml,cssだけにして、javaコードではui生成はできないようにすればjavafx apiの大半を削除できるし、awt,swingとの差別化にもなる
fxmlにはannotation仕様も入るから、html+jsのようにbindingもfxmlでやれるし、現在javafx apiが肥大化し続ける問題を全て解決できるだろうね
html,cssでpage form作るのとほぼ同じパラダイムになるからswing mvcを学ばなくて済むし、コントロールのクラスが非公開なのだから公開java apiをメンテしなくて済む
uiの動的生成は全く使わないしbuilder classパターンと同じくいらないから、コントロールのjavaクラスはjava9では削除にして、fxml+annotation(java)+nashorn(js object)で構築するのが自然だろう
0364デフォルトの名無しさん
垢版 |
2014/09/09(火) 21:34:12.59ID:gE54p7sq
そもそもJavaの商用アプリケーションなんて「素人が作りました」という言い訳が可能が携帯ゲーム以外で見たことないしな…
0365デフォルトの名無しさん
垢版 |
2014/09/09(火) 23:49:07.93ID:WqBl9/NJ
uiは基本的に使いまわしたり他に流用したりせず使い捨て前提でデザインするから、ui frameworkが大きく変わって互換性があまり考慮されなくてもあまり困らないだろう。
kde3,4やgonome2,3も互換性は維持は前提としてないし、ui frameworkは同一バージョンのプラットフォーム固有で、パフォーマンスが必要な3d,anime,game,canvasなどはネイティブに密着で作って欲しいね。
というか、多少複雑でもhtml,flashですら簡単に素早く作れるのだから、それに比べれてみても、javafx8 apiは肥大化して、機能多過ぎで、言語サポート(リテラル)がなくいためコードが多くなって煩雑になる。
しかも、frameworkの設計が使い捨て捨て前提のui生成ではないから管理に手間もかかり、今後javafxをやるのはどう見ても終わってる(普及する可能性もない)。
0366デフォルトの名無しさん
垢版 |
2014/09/10(水) 01:51:18.45ID:kEjwoRo9
>で、できたjavafx api/frameworkはswingと全く同じだし
まるっきし違うんだが少しはソース読めよ。
ていうかおまえそればっかだな
0367デフォルトの名無しさん
垢版 |
2014/09/10(水) 02:52:08.02ID:FZcfe1Xa
はあ?
javaをwindowsだけで使うならjavaなんか止めてc#やれよ。
windowsでjava使う状況は、仕事で必要って以外でjava,javafx,swingが必要な場面ってまずないだろ。
ていうか、linuxのswing,javafxの悲惨すぎる現状を知らないんだろうおまえは?
guiなんかhtml page見てもわかるけど、model-viewなんかに分離しなくてもちゃんと作れるし、mvcやその派生のデザイン・パラダイムはもう今の時代やニーズに合わないってこと気が付かないの?
linuxやshellもろくに触れず、windowsで満足しているお子様には、guiのお作法とかswing mvcの勉強とか絶対無理。
そもそも勉強が一巡できるかどかよりも、今のjavafx,swing frameworkは巨大で難解すぎて集中力の方が続かないだろね。
0368デフォルトの名無しさん
垢版 |
2014/09/10(水) 19:41:54.02ID:MDlXu+ip
>>362
JavaFXに限らずLinuxのデスクトップなんて優先度は最下位でおk。
0370デフォルトの名無しさん
垢版 |
2014/09/10(水) 23:33:48.99ID:8gLhJ3yi
linux desktopが大事なんじゃなくて、javafx platform戦略としてはopenglesのjava platform再実装であって、linux kernel(shell)を使う端末のためのgui shellをx11に変えて提供するのが目的ってことで、
linux実質はopenglesが大事になってる。その流れでopenglesを実装したx11ではないlinux desktopが恩恵を受けられる。
windowsは特別dirextxのラップで提供しているに過ぎないけど、xbox,psなどjavafx(opengles) apiを使うよりよりネイティブのdirectx/c++しか使わないから、
directx版のjavafxを提供し続けてもjava/oracle利益にもならないし、microsoftものに関わってる時点でオープンソースに貢献もしない。
つまりwindows platformは副次的にして、linux(技術者サーバ)、mac(高利益クライアント)にoracle's resourcesを集中しないと、
javaはdotnetの代替に過ぎずjava platformとしても成長することはない(javafxがwindowsで普及することは絶対にない)。

思うに、windows版のoracle jdkは廃止して、jreだけ提供にすれば、google android対策、windows普及対策、ms-devices普及対策になるね。
windowsでjava開発をしたければ、oracle virtualbox(つまりfree linux desktop)か、jre/bin/jjs(つまりecmascript5/6以降)でやらせて、
ide当開発のパフォーマンスが欲しい人は、microsoftものではなく、mac,linux desktopを導入してもらえばいい。
microsoftの社長がナデラに変わったけど、windowsはcloudosを標榜してるから、windows native(desktop)の高速化にもこだわらず、デバイスがcpu 2.0ghz以下だからパフォーマンスも期待できず、
コスト管理のためwin32apiを全般してdotnetに統一しても、今後のmsもの,windows platformものは、デバイスが高速でないから体感も差はないから批判はあまりないだろう。
これが意味するところは、windows native開発ははc/c++を廃止して全てdotnet vmでやるという方向転換をされたら、jvmはdotnetvm上で動きパフォーマンスはかなり悪くなるから、
linux desktop,devices(tabletなど)が大事なのは、javaが今直ぐwindowsから離れないなら、もうjava platformはmicrosoftの手の上なのだからjavaに未来はないからだ。
sunは消滅し、mac,msとも代表者が代わり、時代は変わったし、これに順応してスキームを変えられないところ(もの)は時代にもニーズにも合わず自然消滅するのかと思う。
0372デフォルトの名無しさん
垢版 |
2014/09/11(木) 01:01:23.65ID:lSx1Qfe9
この板の投稿の限界値、2048文字丁度なんですよ
他に書いたこともいろいろ削除したんですけどね
0374デフォルトの名無しさん
垢版 |
2014/09/11(木) 09:12:41.19ID:awRn/eWy
率直に聞きますが

Swingでスタンドアローンアプリってどうなんでしょうか?

やっぱり、各プラットフォーム毎にアプリケーションはそれぞれ
に最適なもので作ったほうが良いのでしょうか?
0375デフォルトの名無しさん
垢版 |
2014/09/11(木) 10:17:26.58ID:1R3HIkNq
guiもクロスプラットフォームにできるという発想自体が幻想だったんですよ
実際受け入れられたのはhtml formですし
javafxについても、html5のオラクル実装ってことで突き進んで欲しかったんですが、fxml,cssだけでいいんで、java codeでもui作れるのはいらないです(そういうのはswingでお腹いっぱいです)
理想としては、html3,4 (form), html5のタグをjavafxもの(fxml)に変えてclassfileへコンパイルするだけでjavafx appとして動くってのがいい感じなんですけどね
0378デフォルトの名無しさん
垢版 |
2014/09/11(木) 23:53:03.87ID:YiBE1klM
何で「Swingでスタンドアローンアプリってどうなのか?」って質問の答えが
「Pascalみたいに教育に特化すればよい」になるんだよ?
0379デフォルトの名無しさん
垢版 |
2014/09/12(金) 00:26:47.22ID:/jOX3V4W
swing linuxは、java6以降であればgraphics2dが改善されてるので性能やレスポンスの面では実用です。
linuxの本格的なサポートはxrendererがサポートされたjava7みたいですけど。
ただ、gtk-lafは崩れるし、linuxでは金掛けてないんで作りこまれておらずただ動くってだけで、j.a.SystemTrayはやる気ないし、awtとネイティブ日本語入力・変換との連携はjava8u5でもバグってて未だ直ってません。
画面が見たいなら、netbeansやv2cのlinuxをみればいいんじゃないですかね。
0380デフォルトの名無しさん
垢版 |
2014/09/12(金) 01:27:37.52ID:/jOX3V4W
>>369
windowsでjava使う人がほとんどだと思いますけど。
とくにjavaが一見人気に見えますが、よく見ると実際はwindowsでandroid作ってますってのが大半でしょう。
つまりそういう人たちは、microsoftやgoogleものに貢献してますが、oracle,javaものには全く貢献してません。

上の続きですが、oracle jdkのwindows配布は中にして、windows oracle jdkは有料プログラムだけにするのがいいでしょう。
mac,linuxはオープンソース自体なので有料にする理由はありませんが、windowsではvirtualboxもopenjdkもあるので問題ないです。
これと同じくmsがwin32api, c/c++,vc++を一般向けは廃止にして、有料の契約者だけにして、一般は全てdotnetでやるという戦略をとるは現実的だと思いますよ。
そうすると、windowsplatformのvmものつまりdotnetで作るアプリ以外の全てのアプリはパフォーマンスがでないので、msとの有料契約か、ただ動くっていうのだけになるでしょう。
cloud-osの説明を見ててもmsとしてはwindowsのアプリは、基本html5,js,browserでやってくれればいいことでしょうね。
windowsでandroidしか作れない現状のjavaは、javafx(javame)はもちろんjavase自体がオワコンってことです。
0382デフォルトの名無しさん
垢版 |
2014/09/12(金) 15:18:04.75ID:SJxZ4wnL
JCheckBoxでテキストをクリックしてもチェックが変化しないようにしたいのですが、どうすればよいですか?
0385デフォルトの名無しさん
垢版 |
2014/09/15(月) 19:27:00.14ID:G9G1bER9
JavaFXで作った2chブラウザとかあるよ
かなり重いけど
http://www.m9-www.com
0386デフォルトの名無しさん
垢版 |
2014/09/15(月) 20:08:18.69ID:8/HnkckP
>>381
なるほど、こういう意見を言う奴は、3以下の数すら数えられない知性の持ち主と言うことで、
ということは、まともな知性の持ち主は当然逆。
0390デフォルトの名無しさん
垢版 |
2014/09/18(木) 23:06:23.79ID:Er6jWU0c
低速も問題かもしれんが、デザインしにくい
VisualStudioだったら適当に貼り付けて終わるが
WindowBuilderでやるとスゲー時間が掛かる
まるでWEBページを手打ちだけでデザインしてるようだ

V2Cもswingで作ってるけど、どれだけ時間掛かったのだろう
オマエラの根性に頭が下がるわ
0394デフォルトの名無しさん
垢版 |
2014/09/22(月) 21:20:55.17ID:vh/Af1aB
天才が組んだアセンブリ資産をデバッグできる人がいなくなったという教訓から、プログラミング言語は馬鹿にもできなきゃダメだということ共通認識になりつつある
0397デフォルトの名無しさん
垢版 |
2014/10/16(木) 13:46:42.85ID:yjF7zNHz
javafxもswingもまともに動くのはwindowsだけだし、実質windows専用でしょ
今どきwindows以外でもguiが使えればいい、動けばいいというだけじゃだれも使わないよ
android,iphoneやその他モバイルでは、どうしてクロスプラットフォームのフレームワークがなかなか流行らず、みなネイティブ言語を使い新規にguiコードを新規に書くのか
guiのコードについて手を加えずともwindows以外でも動くのに、なぜ過去にswtが台頭し、なぜ現在までswingは積極的に使われなかったのか
それは、windows以外だとjavafx,swingは積極的に力を入れてサポートしておらず、まともに動くのは結局windowsだけしかないからです
0401デフォルトの名無しさん
垢版 |
2014/10/17(金) 05:57:22.46ID:EbX+ZqyH
>>399
windowsで満足してlinuxも使ったことないのによくいうよ
windowsで十分満足ならそのどこにクロスプラットフォームが必要なんだよw
しかもネイティブlinuxでswingとかjavafxとか作ったことも動かしたこともないんだろ?
linux環境でgtk-lafの不出来motiff-lafの最悪さをみれば、swingってのは結局windowsだけだなってことがよく分かるだろう
javafxだと、オラクルになってからjavafxドメインと専用ページが消滅し、javafxの紹介ページもjavaseに埋もれてjavafx platform自体が消滅してるでしょ(つまりjavaはオワコンってこと)
0402デフォルトの名無しさん
垢版 |
2014/10/17(金) 06:06:01.11ID:jol15s5e
XPサポ切れによるLinux人口が増えてればLinuxでのGUI需要も増えるだろうからOracleも対応してくるかもしれんよ
0403デフォルトの名無しさん
垢版 |
2014/10/17(金) 18:34:16.97ID:kCmxuTL5
>>402
そういう人はlinuxにも来なくていいしjavaでも全くお呼びでないので、windowsだけで一生過ごしてて下さい
0404デフォルトの名無しさん
垢版 |
2014/10/17(金) 20:32:11.80ID:qRy516cZ
>>401
Windowsにこそクロスプラットフォーム性が必要だということを知らないのか?
クライアントは自分のマシンにも「Windows」という名前がついてるから、Windowsで動くものは動いて当然だと思ってるし
0405デフォルトの名無しさん
垢版 |
2014/10/17(金) 20:38:36.41ID:kCmxuTL5
>>404
それはマイクロソフトがやることであってオラクルの仕事じゃないですね
そもそもwindowsで閉じてるならjavaじゃなくてdotnetでいいのでは?
0407デフォルトの名無しさん
垢版 |
2014/10/18(土) 01:19:02.59ID:HWuejHv0
>>396
IME問題と思われ。
JDKのページ(その詳細じゃない方)に書いてあるね。
V2Cで騒がれてたけど、そもそもNetBeansでこけるという壮大な奴。
oracle社員誰も使ってないんだねー

>>404
Windows CEとWindows RTとWindows Phoneをdisるのはやめてもらえませんか?w
0411デフォルトの名無しさん
垢版 |
2014/12/26(金) 10:02:05.21ID:vf8+t8Sa
GUIはFXでつくる。
0412デフォルトの名無しさん
垢版 |
2014/12/26(金) 10:47:49.42ID:uzn4bewm
>>401
クロスプラットフォームなんて幻想だよww

実際には、それぞれの環境に応じて、同じインターフェースになるように
作ってるのが現状。Javaだのなんだの、そんなものは、今もう語るような
ものじゃねぇよ。
0413
垢版 |
2014/12/26(金) 12:30:51.00ID:B31hRDon
    /:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::://ヽ:::::::::::::::|
    l:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::// ヽ::::::::::::::l
    l:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::/:::「'ヽ::::::::::://   ヽ:::::::::::|
    |::::::::::::::::::::::::::::::::::::::::::::::::::::::::::ノl:::ノ l:::::::/      ヽ::::::::|
   ノ:::::::::::::::::::::::::::::::::::::::::::::::::::::/ ゙゙  ノ:::/ ,,;;;;;;,,    ,,,,ヽ:::::l
   ):::::::::::::::::::::::::::::::::::::::::::::::/    ノ/ __,'''i: ('''__):::l  
  )::::::::::::::::::::::::::::::::::::::::::::::::::/         ̄ ̄ン:. :「 ̄`ヾ   
 1:::::::::::::::::::::::「 `┤l:::::::::::::::::l          ̄   ,  ヽ ̄ l   
  `l:::::::::::::::::::::ヽ  :l li:::::::::::::/        ヽ  /´   `l  |
  ヽ::::::::::::::::::::::\_」 lヽ::::/         .l  !:-●,__ ノ  /      
  ノ:::::::::::::::::::::::::::ノ | l `゙゙           i ,,;;;;;;;;;;;;;;;;;;;;,  /ヽ       
,/ ヽ::::::::::::::::::::::(  l l::::::::..         /.:''/´ ̄_ソ  /  `ヽ
     ヽ:::::::::::::::ヽ | l:::::::::::...      /::// ̄ ̄_ソ  /    \   ヴッ!!
        ヽ:::::::\| l::::::::::::::::...    / :::.ゝ` ̄ ̄/ /       ヽ
           ヽ:::l l:::::::::::::::::::..      ̄ ̄;;'' /         ヽ
              l l;;;;;;:::::::::::::::.....;;;;............;;;;;;''ノ            l
              l l '''''''''''''''''''''''''''''''''''''' ̄l |             |

http://www.youtube.com/watch?v=z2qK2lhk9O0
0414デフォルトの名無しさん
垢版 |
2015/06/14(日) 17:01:51.39ID:K+XD/4SD
JFrameの大きさを中のコンポーネントに合わせて変化させたいんだけど、中のコンポーネントの大きさを変えた後のJFrame#pack()が効かない件
0415デフォルトの名無しさん
垢版 |
2015/06/14(日) 20:44:29.74ID:FhKDcAx/
>>414
とりあえずこれは動いた

import java.awt.Font;
import java.util.Random;
import javax.swing.*;

public class Test
{
public static void main(String[] args)
{
SwingUtilities.invokeLater(() ->
{
Random rng = new Random();

JLabel label = new JLabel("ぬるぽ");
JFrame frame = new JFrame();
frame.getContentPane().add(label);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);

Timer timer = new Timer(1000, e -> {
label.setFont(new Font(Font.MONOSPACED, 0, rng.nextInt(40) + 10));
frame.pack();
});
timer.setRepeats(true);
timer.start();
});
}
}
0416デフォルトの名無しさん
垢版 |
2015/06/14(日) 21:37:53.36ID:5oQi2aoa
>>415
ごめん、一週間以上ハマってたのに自己解決してしまった。
しばらくスレ更新ないからこんなに早くレスくると思わなかったよ。ありがとう。

JFrame/JScrollPane/JTableという階層構造にしてて、JTableの大きさは自動調整させてたんだけど、その結果をJScrollPaneに指定してなかったのが問題だったみたい。
JTableからgetPreferredSize()でサイズとってJScrollPane#setPrefferedSize()で指定してあげて、pack()したらうまくいった。

2回目以降のpack()は動かないって勝手に決めつけるんじゃなくて、そういう簡単なコードを書いて確かめるようにするよ。
0417デフォルトの名無しさん
垢版 |
2015/06/14(日) 23:49:10.85ID:1KRcd+mu
>>414
JFrame.setVisible(false)
JFrame.setVisible(true)
で反映しない?

packでダメなのは当たり前ね。すでに表示してるんだから。
0418デフォルトの名無しさん
垢版 |
2015/08/24(月) 10:45:27.85ID:bj2zUU7M
JDK8 u60入れてからV2CをNimbus Look&Feelでつかってると
垂直方向のスクロールバーのバーハンドルが表示されなくなるんだけど。
リストが短い(バーハンドルが長い)場合は表示されるんだけど、
リスト長くなると表示されなくなる。

閾値超えるとバーハンドルの長さを最低で留めるって処理が正常にできてないっぽ。
u51ではなんとも無かった。なんでこんなところでエンバグしてんだよとしか……

たぶん水平方向も同じじゃねーかと思うが、
V2Cでは横にはそんなに長くならんので確認してない。
0419デフォルトの名無しさん
垢版 |
2015/08/24(月) 20:09:23.27ID:8Y0eexvl
バグが埋め込まれたってことは、もう完全放置かと思いきやいじってるのはいじってるってことか
0420デフォルトの名無しさん
垢版 |
2015/10/07(水) 06:57:04.19ID:qdqRCjiZ
受ける会社大丈夫?
下記の条件が全て当てはまる会社にご注意下さい。

・IT系 in tokyo
・「社名 労基」でググると過去の2chスレが出てくる
・転職会議で2.5点
0424デフォルトの名無しさん
垢版 |
2015/10/25(日) 16:27:15.89ID:3dovA7ha
本屋行って出来るだけ新しい本を探そう
最低でも3年以内、11年前の本とかは論外(読みかえが必要な個所が多数で使いものにならない)
0426デフォルトの名無しさん
垢版 |
2015/10/25(日) 18:12:41.91ID:BCQ2T68t
>>425
なるほどそうなんですか…。
プログラミングの世界は技術革新が早いですね。
同じjavaでもラムダ式だと一瞬他の言語のように見えます。
0427デフォルトの名無しさん
垢版 |
2015/10/25(日) 18:55:28.42ID:hxCeS6gh
そーいやJavaFXは日本語入力できるようになったん?

最初期に触ってた新しい物好きな日本人はあれでかなり居なくなったよね。
0428デフォルトの名無しさん
垢版 |
2015/10/25(日) 19:57:41.46ID:HlFjsOMk
Javaって業務用アプリ書くのに使うのに、日本語通らないって言われたら誰も手を出さないんじゃない。
jre6なSwingでいくつかローカル部門用アプリ書いたけど、jre8の今もまあ普通に使えてるよ。
FXに手を出したことさえないけどさw
0431デフォルトの名無しさん
垢版 |
2015/12/22(火) 14:16:14.99ID:6JmEczDa
JFrame だけのプログラムで、フレームを拡大縮小し続けるだけでメモリ使用量が 200MB くらいまでいくんだがw
0432デフォルトの名無しさん
垢版 |
2016/04/09(土) 23:01:17.97ID:FTf3iFrI
なんて起動して放置してるだけでヒープ増え続けていくのん?
なんか生成し続けてるの?
0434デフォルトの名無しさん
垢版 |
2016/05/04(水) 14:36:25.04ID:jh9y9SjZ
小さい画像領域に大きい画像は入らないから、新しいメモリ領域を確保するだろ
小から大へ動かすとメモリを大量に消費するだろ
0435デフォルトの名無しさん
垢版 |
2017/03/15(水) 14:34:51.97ID:8F8YsJXw
最近始めたんですが
起動がめっちゃ遅いのは仕様ですか?
Eclipseからの起動→遅い
JAR書き出し起動→超遅い
0438デフォルトの名無しさん
垢版 |
2017/04/04(火) 20:35:43.35ID:4nu16BuT
大概、ウィルススキャンが止めてる。
0439デフォルトの名無しさん
垢版 |
2018/05/23(水) 23:06:35.39ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

JD7SU
0440デフォルトの名無しさん
垢版 |
2018/07/04(水) 23:02:44.36ID:gFgZc5FG
2C3
0442デフォルトの名無しさん
垢版 |
2018/08/07(火) 22:54:59.59ID:Mbqc13Y2
JavaFXが死んでこっちは盛り上がっているかと思ったが、そうでもないんだな。
0443デフォルトの名無しさん
垢版 |
2018/11/17(土) 11:41:05.83ID:LJA6Qb6G
向こうのスレから転載

An Oracle White Paper March 2018
Java Client Roadmap Update
https://www.oracle.com/technetwork/java/javase/javaclientroadmapupdate2018mar-4414431.pdf


Swing and AWT
AWT has been an integral part of Java SE since its launch in 1996.
Swing was introduced shortly thereafter as a separate library and finally incorporated into “J2SE 1.2” in 1998. Both toolkits are still part of the Java SE Specification and core to many other toolkits and applications that build on top of them.
Oracle will continue developing Swing and AWT in Java SE 8 and Java SE 11 (18.9 LTS). This means they will be supported by Oracle through at least 2026.
0444デフォルトの名無しさん
垢版 |
2018/11/21(水) 18:59:51.94ID:b35PMmU2
> This means they will be supported by Oracle through at least 2026.
オラクルがこういう言い方するときは要するにまだ何も決まってないってことだぞ。
未来のことに触れてると見せかけて現状を説明しただけっていういつものやつ。
0446デフォルトの名無しさん
垢版 |
2021/01/20(水) 19:27:35.65ID:MNAZOc7q
GNU LGPL3で立ち上げたいけど、
Javaのオープンソースでもいける?

一応GNUにメールはしてる
0448デフォルトの名無しさん
垢版 |
2021/01/20(水) 19:38:59.15ID:RjL3wS6+
大丈夫だろうか、あまりGNUライセンスにする傾向じゃないプログラムで、
ただ、他に向いてそうなライセンスが見当たらないんですよね。

メールはしたから返事まちかな、、

OSDN > ソフトウェアを探す > マルチメディア > サウンド/オーディオ > ミキサ > Extended MIDI Mixer

Yahoo知恵袋の宣伝目的NGに該当するので、こちらで伺います。
Swingなのでこのスレを見てました。

ビクビクしてますが、、
0450デフォルトの名無しさん
垢版 |
2021/01/21(木) 13:27:13.82ID:jRLswf9/
MidiDevice用のINはスレッドをAPIが立ち上げてるのか
一応対処しました。

ひょっとしてOUTも?

あとOutputのバッファオーバーを知るAPIがないから
それは勘弁な

0.93リリースです。
0451デフォルトの名無しさん
垢版 |
2022/08/05(金) 08:04:11.70ID:i6vOLsi1
予想通り過疎ってるwww
独り言落としてくね!

Win版OpenJDK使用のアプリで、タッチパネルピンチ操作イベントをマウスホイールイベントとして拾えないバグ、報告されたの5年前なのにずっと放置w

もう本家もやる気ないんだろな。
FXですらMac版のスレッド実装問題でdndで落ちるバグ放置されてるし。
仕方ないので、前者はJNA使ってイベント拾う実装を書いてる。
ピンチ検出までできたからもう少しでインかアウトの判定に辿り着けそう。

というわけで未だにswingでマルチプラットフォームアプリ書いてるわけだけど、
WindowsのUWPはオワコンになったし、
なんだかんだで業務用アプリ書くには悪くない環境ですよswing は。
動作もjavascript頼みのマルチプラットフォームフレームワークより軽いと思う。

では、数年後スレが残ってたらまた来ます。
0452デフォルトの名無しさん
垢版 |
2022/08/06(土) 21:42:05.07ID:wJirtnJ7
>>451
>なんだかんだで業務用アプリ書くには悪くない環境ですよswing は。

これは大収穫のお言葉、詳しく教えてください!!
0454デフォルトの名無しさん
垢版 |
2022/08/09(火) 00:18:40.76ID:KAEQzIc+
じゃあ俺も
0456デフォルトの名無しさん
垢版 |
2022/08/10(水) 18:32:47.04ID:8wl1vZ8Q
プログラミングモデルは好きだけど
look & feel は不完全な模倣になってて
ネイティブのラッパーの方が
実用的だなと思った
0457デフォルトの名無しさん
垢版 |
2022/08/10(水) 22:13:11.96ID:gf2K0ZCl
わしも!
非同期処理の実装しやすいし
androidとかフレームワークによってはダイアログ表示と結果取得が非同期だったりするしw
0459デフォルトの名無しさん
垢版 |
2022/09/17(土) 15:06:22.57ID:5gb6FxEB
swingアプリにJFXPanelのwebkitブラウザ実装したUIキメラ作ったったw
これでjsベースのエディタとかビューのモダンなUIフレームワーク使える

ブラウザ内のjsエンジンから発生したイベント拾ってJava側でハンドルする
ただswingとjfxのスレッドが別だから
初期化時の同期と相互にinvokeLater()使うことに注意必要だけど
0461451
垢版 |
2023/09/24(日) 22:24:00.15ID:jzYiScHF
>>451

本業の合間にやってたから今頃なったけど、Windowsでピンチ操作拾えないバグの回避実装に成功した~
JNAでWin32のローカルメッセージハンドラフックしてピンチイベント検出できた
VC++の構造体の内部資料が無くて
色々なソースから類推するのが大変だったけど勉強になった
0462451
垢版 |
2023/09/24(日) 22:34:50.62ID:jzYiScHF
>>452
亀レスすまん

流行りのWebのvue.jsとかreactとかより
設計がシンプルだからデバッグしやすいなど実装が楽ってだけ
業務用はuiのカッコ良さより安早楽が大事でしょ?
あとビジネスロジックにおいてJavaは高機能ライブラリが豊富なのも有難い
MSの.NETほどにフレームワーク設計しくじってぐちゃぐちゃになってないし

逆に今どきのおしゃれインターフェースにしたいならjs系がいい
0463デフォルトの名無しさん
垢版 |
2023/09/27(水) 23:34:40.13ID:Kbex28u5
そういやスレタイでswingを低速言うてるけど
JavaFXのほうが初期化しめちゃめちゃ時間かかってもっさりしてるんだけど…
そしてmacでは未だにスレッド競合解決してない
swnigよりオワコンな気がする
0465デフォルトの名無しさん
垢版 |
2023/12/28(木) 23:54:02.59ID:eFg1sCcO
スタンドアロンアプリ自体が絶滅しようとしているんだ…
クラウドが大規模障害起こして復旧目処立たなくなったとき
人々はjavaアプリの偉大さを噛みしめることであろう

swingは死なず、ただ去りゆくのみ
0467デフォルトの名無しさん
垢版 |
2023/12/29(金) 22:00:11.69ID:JQn1FaNw
まあハードウェアアクセラレートあってもHTML/jsのUIがもっさりしてるのみんな慣れてきたしね
0468デフォルトの名無しさん
垢版 |
2023/12/30(土) 00:25:28.91ID:9n1xxmBk
GUI表現としてHTML/CSSは十分なんだけどロジックをJavaScriptで書くのはつらい
0469デフォルトの名無しさん
垢版 |
2023/12/30(土) 00:55:38.23ID:CvaIx2Pu
ビジネスロジックは鯖側のnode.jsで書けるしスタンドアロン系も同じnode.jsで動くフレームワークあるよ
ただマルチスレッドじゃないから似非非同期による安定実装めんどくさい
0470デフォルトの名無しさん
垢版 |
2023/12/30(土) 08:42:45.57ID:9n1xxmBk
サーバー側のnode.jsだってJavaScriptじゃん
それに昔と違ってビジネスロジックはサーバーサイドが担当するって考え方も今は通用しない
SPAが流行しててクライント側で動かさなければならないロジック(JavaScript)が昔より増えてるのだ
0471デフォルトの名無しさん
垢版 |
2023/12/30(土) 09:17:16.16ID:CvaIx2Pu
ビジネスロジックとUIロジック整理しないで実装してるから開発管理破綻してるのでは?

フロント/バックエンド部隊の連携、運用保守まで考慮した設計できないならSPAは採用すべきでないと思うけどなぁ
俺のvue.jsとlambdaの開発リーダー経験からの話だけど
next.jsあたりはもっと進歩してスッキリしてんのかと思ったが違うの?
0472デフォルトの名無しさん
垢版 |
2023/12/30(土) 12:30:59.06ID:9n1xxmBk
ビジネスロジックをサーバー側に閉じ込めようとすると
SPAではクライント/サーバー間の通信回数が増えてレスポンスが低下したりするのよ
だからクライントでビジネスロジックを動かすようになってきてる
0473デフォルトの名無しさん
垢版 |
2023/12/30(土) 13:40:32.71ID:CvaIx2Pu
そうなのか、そんなファットになると
遅延読み込み使ってもロード&jsコンパイルのせいでキャッシュ前は凄く重そうだ

そんならアプレットやActiveX時代のほうがよほど合理的だよねw
4年くらい前は鯖と無駄な通信しないように同期対象データを複数のグループにまとめてパフォーマンスと操作性のバランス保ってたけど
いまだにフレームワークで鯖と自動差分同期も出ないんだ…

というわけで、アプレットはダメでもswingアプリ復活の方向でめでたしめでたしw
0474デフォルトの名無しさん
垢版 |
2023/12/30(土) 16:51:42.98ID:4WPbBasM
Ruby on Rails 7 からは、Hotwire に変わった。
HotwireはHTML Over The Wireの略で、
SPAの開発において、JavaScriptのコーディングを極力必要としない。
脱node.js, webpack

JSONではなく、HTMLベース。
サーバーサイドでHTMLを生成し、WebSocketでWebブラウザへ送信する

https://techblog.gmo-ap.jp/2022/07/05/rails-7-hotwire/

https://zenn.dev/shita1112/books/cat-hotwire-turbo/viewer/abstract
0475デフォルトの名無しさん
垢版 |
2023/12/31(日) 11:53:05.54ID:bYYQOTA1
SSRていうやつけ?
Rails嫌いではないがすっかりオワコンイメージだなあ

いやほんとにファットなアプリケーションをHTML/JSで実装しようというアプローチ自体が間違ってたんだなぁとしか思えない
そんならアプレットやバイナリ配信してキャッシュさせるアプローチに戻したほうがいい
0476474
垢版 |
2023/12/31(日) 22:47:52.24ID:zAD+40EH
Rails 7 のHotwire, Elixir のPhoenix もLiveView で、
websocket によるリアルタイム通信に変わった。
これはHTTP2 で通信速度が速くなったから

ここ数年、SPA でReact に奪われたシェアを回復すべき戦略。
JSON を送って、ブラウザ側で組み立てなくても良い
0477デフォルトの名無しさん
垢版 |
2024/01/02(火) 22:10:02.99ID:dQstW7+J
Webフロントエンドは成熟しないねー
次々と新しい技術が登場してきて大変
いま最新技術を選択しても数年後には「まだそんなの使ってるの?」と言われちゃう
0478デフォルトの名無しさん
垢版 |
2024/01/06(土) 09:08:07.68ID:vtQPKo7U
日本の客も開発者も要件整理苦手だから泥縄で作るじゃない?
そういうやり方の場合SPAは実装ぐちゃぐちゃで使い勝手も悪くメンテも困難になる

レガシーなページ遷移あったほうが自然とトランザクション整理されるからお似合いと思うけど
0479デフォルトの名無しさん
垢版 |
2024/01/06(土) 09:10:41.02ID:vtQPKo7U
そういう意味ではswingとかスマホでスタンドアロンアプリ作るのも日本人向きじゃないと思う
0480474
垢版 |
2024/01/08(月) 21:38:29.96ID:gJaMg8aw
>>478
>レガシーなページ遷移

Ruby on Rails では、turbolinks を使って、pjax になる

ajaxとhistoryAPI(popState, pushState)を利用して画面遷移する。
js, cssの読み込みを初回時に行い、次回以降の読み込み処理を省略することで高速化する
0481デフォルトの名無しさん
垢版 |
2024/04/19(金) 02:33:22.05ID:uD5nyH4z
いまではPCのスペックが上がって、遅くもなんともない。
0482デフォルトの名無しさん
垢版 |
2024/04/21(日) 20:30:12.98ID:MS9R2kFy
JAVA SWING のボタンはお洒落だからカワイイから
JAVA SWING はボタンはカワイイくてお洒落だ
0483デフォルトの名無しさん
垢版 |
2024/04/22(月) 21:44:32.97ID:Xbe0J1w7
swingアプリメンテしてて困るのは
最近は横4000ドット近くあるノートPCで
アイコンやフォントが小さすぎる問題

古いフレームワークだからそういうの想定したスケーリング機能がない

結局自分でcontainer内のフォントサイズを再帰的に設定するメソッドとか作ったが
何十個もあるダイアログ全部まで手が回ってない…

逆に>>481 の言うように、スピードは全く問題なくなったね
0484デフォルトの名無しさん
垢版 |
2024/04/22(月) 21:46:56.69ID:Xbe0J1w7
>>482
かわいいっていうか
ちっさすぎて見えなくなったよ
0485デフォルトの名無しさん
垢版 |
2024/04/23(火) 01:08:28.22ID:VsJUMcwZ
SwingってHiDPI対応してないの?
Swing で作られてるらしいIntelliJ IDEAはHiDPI対応してるっぽいけど?
0486デフォルトの名無しさん
垢版 |
2024/04/23(火) 08:28:06.05ID:P83a14ex
>>485
標準のL&Fは対応してないよ
対応しているように見える実装は独自L&F実装してる
OS側の強制拡大スケーリングはうまくいかないこと多いし
やはり時代遅れ
0487デフォルトの名無しさん
垢版 |
2024/04/23(火) 09:50:21.78ID:83Qb5OUf
そうなのか
ちなみにJavaFXはHiDPIに対応してた
0488デフォルトの名無しさん
垢版 |
2024/04/23(火) 23:01:45.01ID:kXp8u5Dt
>>483
そんな高解像度のまま使っているのがおかしい
0489デフォルトの名無しさん
垢版 |
2024/04/24(水) 13:19:52.73ID:21UOMqIs
jfxはmacOSで致命的ハングするから
代替にならないんだよなぁ
0490デフォルトの名無しさん
垢版 |
2024/04/25(木) 20:14:42.51ID:WdrJmqqJ
ところでJavaFXにあるような
カレンダーによるdatechooserいいの無い?
名前忘れたけど有名どころのやつは
HiDPI対応してないうえにフォント拡大も
パネルサイズ変更も対応してないので
つかえないんですよ
レスを投稿する


ニューススポーツなんでも実況