問題タブ [nimbus]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - JTabbedPane:スタック/ニンバスの場合、タブの自動並べ替えを回避します
JTabbedPaneは、私が自分の目的に必要なものです。水平方向のスペースが非常に限られているため、タブが積み重ねられます。これはまったく問題ありません。
ただし、デフォルトの動作では、ユーザーがタブをクリックすると、*タブが再ソートされ、アクティブなタブが下位の*tになります。理論的には非常に直感的で論理的に見えるのは、ユーザーが「どちらがどちらであったか」を見失ってしまうため、実際の使用では悪夢です。それは単に紛らわしいだけで、私は何度も何度も言われます。
この動作を回避するために、UIのいくつかのメソッドをオーバーライドすることが可能であると思います(そして、これが紙のカードで物理的に可能かどうかは気にしません:-)。
誰かが私がそれをする必要がある場所について何か考えがありますか?私はニンバスLAFを使用していますが、それは簡単ではないようです。
(radiobuttons / cardLayoutを使用することを考えましたが、タブのタイトルにカスタムパネルを配置する必要があり、ラジオボタンには文字列またはアイコンしか含めることができません。JToggleButtonについても同じです...)
ヒントは大歓迎です!
ありがとう&親切よろしく、フィリップ
java - JFrame と Nimbus のルック アンド フィール
プロジェクトで Nimbus ルック アンド フィールを使用しています。ただし、すべての GUI JComponent は Nimbus のルック アンド フィールを備えていますが、JFrame は常に Windows のルック アンド フィールを備えています。
JFrame に Nimbus のルック アンド フィールを持たせるにはどうすればよいですか?
編集:オペレーティングシステム:Windows XP
java - Nimbus ルック アンド フィールで JTable ヘッダーのコンテンツを中央に配置する方法
ニンバスのルック アンド フィールを持つ JTable ヘッダーのコンテンツを中央に配置するにはどうすればよいですか? DefaultTableCellHeaderRenderer を使用しようとしましたが、次のようになります。
それらをすべて PARENT_ID 列のように中央揃えにする方法はありますか?
java - JComboBoxの幅を修正
いくつかのオプションがあるJComboBoxがあります。別のコンポーネントで選択すると、JComboBoxの内容が変更されます。最初にメソッドを呼び出し、removeAllItems()
次に必要な文字列を1つずつ追加します。
問題は、デフォルトでいくつかのオプションがあり、そのうちの1つはより大きなテキストだったため、JComboBoxはそのオプションを正しく表示するために必要な幅を取得しました。JComboBoxの内容を変更すると、そのテキストオプションがなくなり、テキストが小さくなるとJComboBoxに幅が与えられるため、内容を変更すると小さくなります。
私の最初のアプローチは呼び出しでしたがmyComboBox.setPreferredSize(myComboBox.getSize())
、その寸法は固定されていますが、正しくありません。高さと幅が少し小さくなります。これは、Nimbus Look&Feelを使用しているためだと思います。getSize()
メソッドから取得するディメンションは、JavaのデフォルトのLook%Feelで指定されたものです。
myCombo.setPreferredSize(new Dimension(myCombo.getHeight(), myCombo.getWidth()))
私も同じ結果で試しました。
どうすればこの問題に取り組むことができますか?
レイアウトの使用方法のコード例を追加します。
これは基本的に、6つのJPanelを備えたGridBagLayoutであり、それぞれに新しいGridBagLayoutがあります。物事を単純化するために、ここにjPanel1を記述しました。あまり面倒ではないといいのですが。
java - nimbus laf を使用して jspinner の背景を変更することは可能ですか?
私はあなたに助けを求める前に調査を行ったと確信していますが、何かを見落としている可能性があります.
Nimbus laf を使用して Java UI を作成しています。状態変化時に JSpinner の背景色を変更したい。つまり、上下のボタンを押すと、jspinner 内のテキスト フィールドの背景色が色を変えて、値が変更されたことを示します。
私はこれが OTHER ルック アンド フィールを使用して可能であることを認識していますが、Nimbus ではそれほど簡単ではありません。
((JSpinner.NumberEditor)jSpinner1.getEditor()).getTextField().setBackground(color.yellow);
UIマネージャーのカラーテーマを実際に変更することも検討しましたが、デフォルトで全体的にではなく、アクションが発生したときにのみ色を変更したいと考えています。 ここかここ
これはまったく可能で、どこから始めればよいですか?
これに失敗したので、ボタンの色を変更したいと思っていました:
jButton.setBackground(Color.yellow);
これは簡単ですが、デフォルトの色は塗りつぶされたグラデーションなので、元に戻すにはどうすればよいでしょうか?
誰かが知っているか、助けてくれることを本当に願っています。
事前に大歓迎です!
java - 艶出しリストとニンバスの背景色
GlazedListsのコンボボックスにオートコンプリート機能を使用しています。それはかなり便利です。私もnibusL&Fを使っています。ただし、JCombobox.setBackground(Color)は無視されます。ニンバスを使用して背景色をたとえば赤に強制する方法はありますか?
サンプルコード:
java - Nimbus laf を使用すると、コンボボックス ItemEvent から呼び出されたときに JOptionPane がフォーカスされません
あなたが助けてくれることを願っています。
これが単なるバグではなく、解決できることを願っています。
私は現在、JComboBox
. ユーザーがコンボ ボックスで選択した項目を変更すると、ユーザーが変更JOptionPane
を確認できるように が表示されます。
コンボ ボックスで新しい選択が行われると、必要に応じてJOptionPane
が表示されますが、使用するには 2 回クリックする必要があります。つまり、一度クリックしてフォーカスを取得してから、使用するボタンをクリックします。もう 1 つの方法は、プログラムの GUI の境界内 (optionPane の背後) をクリックしてから、ボタンをクリックすることです。
ボタンがクリックされると、例外は発生せず、プログラムは通常どおり機能します。
この機能は、Nimbus
LookAndFeel を使用した場合にのみ発生し、ネイティブ macos laf (Mac でビルドし、Windows ではテストしていません) では発生しませんが、他の理由でニンバスを使用する必要があります。
Nimbusの問題追跡を調べてきましたが、まだ欠陥を見つけていません.
私は同じコード(つまり)を呼び出す JButton を持っていますが、JOptionPane.showConfirmDialog(...
これは完全に機能します。コンボボックスのアクションから呼び出されたときだけです。
あなたが助けてくれることを本当に願っています!事前に乾杯!
java - スクロールするように設定された JTabbedPane に Nimbus L&F の分割線がありません
タブと SCROLL に設定された Nimbus L&F TabbedPane のコンテンツとの間の青い水平の仕切りがありません (他の L&F (デフォルト & ウィンドウ) がそれらを提供します)。
ご覧のとおり、問題はnew JTabbedPane(JTabbedPane.TOP, JTabbedPane.SCROLL_TAB_LAYOUT)
(写真の上) に限定されていますが、WRAP のデフォルトではこの動作は見られません (写真の下)。
の一部をオーバーライドすることで、このような変更が可能になるはずNimbusDefaults.class
です。ここに抜粋があります:
Nimbus が WRAP と SCROLL をどこでどのように区別しているかがわかりません。.put()
そこにたどり着くために必要な魔法を教えてください。
前もって感謝します!
java - ニンバスのルックアンドフィールでJPanelsの背景色を変更するにはどうすればよいですか?
アプリケーションのすべてのJPanelに異なる背景色を使用したいと思います。Nimbusのルックアンドフィールを使用する場合、どうすればよいですか?
ニンバスのルックアンドフィールのコンポーネントの色を変更するには、[色のテーマの変更]に従います。
それは時々、ランダムにしか機能しません。色を変更する前に設定した場合PropertyChagneListener
、通知されるのは1回だけです。
ここにいくつかのテストコードがあります:
java - JButtonのマージン。ニンバスプラフの場合は尊重されません
ニンバスのルックアンドフィールがインストールされている場合、margin
aのプロパティは尊重されません。。いくつかの「小さな」ボタンが必要ですが、ニンバスはボタンのテキストの周りのスペースを大きくするため、「非常に大きな」ボタンしか表示されません。nimbusのデフォルトページで、次のプロパティがあること
を発見しました。JButton
それは大きな値で事前設定されています。
私はそれを次のコードでオーバーライドしようとしました:
で、main
ニンバスのルックアンドフィールを設定した直後。
しかし、何も起こりません。ボタンのテキストの周りの空きスペースはまだ大きいままです。何か案が?