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
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. ツリー
レスを投稿する


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