問題タブ [java-canvas]

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.

0 投票する
3 に答える
2179 参照

java - 戦艦ゲーム - 船が重なり合う

ACM ライブラリを使用して Java で簡単な戦艦ゲームを作成しています。ゲームの開始後、船はランダムな場所にキャンバスに配置されることになっていますが、問題は、船が互いにカバーする可能性があることであり、これはゲームでは許可されていません. 船同士が重ならないようにするにはどうすればよいですか?

私のコードは次のとおりです。

ご覧のとおり、for ループの中に while ループを入れましたが、役に立ちません。

0 投票する
1 に答える
162 参照

java - Java: 文字列を整列するグラフィックス

現在、ローリング テキスト メソッドを作成しようとしています。このメソッドでは、String. すぐに、左から右に描画を開始し、時間の経過とともに新しい行に移動するため、画面からはみ出さなくなります。私はFontMetrics自分の目標を達成しようとするために使用しています。

RollingText.render(Graphics g, int x, int y)メイン クラスの render メソッドから引数を my に渡します。renderメソッド内から、Graphicsフォントと色の設定を開始しFontMetrics、すべての を取得し、FontMetrics. 同様に、テキストを文字列に描画するために for ループに入ります。

drawString現在、この時点ではすべて正常に動作しますが、次のように、メソッド内の各単語間のスペースが非常に誇張されているという問題が残っています。

ローリング テキストのデモ

この線:

私が現在抱えている唯一の問題は、x 位置の計算を行う正しい方法を見つけることです。現在、単語の長さに応じて大きく動的に配置されており、少なくとも正常に見えるようにする方法がわかりません。現在定義されている整数などとさまざまな組み合わせを試しました。発生する問題は、不正確な間隔から、不適切な配置やちらつき、テキストの重なりまで、どこにでもあります。

最後に、私の質問は、テキストが正しく見えるように x 座標を正しく配置するためにどのようなアルゴリズムを使用するかということです。

0 投票する
1 に答える
43 参照

android - 線が引けない

点Aから点Bまで破線を引きたい

これが私のコードです:

しかし道は決して描かれない

助けてください!

前もって感謝します。

0 投票する
1 に答える
52 参照

java - キャンバスでのドラッグ アンド ドロップによる変更は、最小化後にのみ表示されます

このコード スニペットは、キャンバスへのテキストのドラッグ ドロップを実装するより大きなクラスの一部です。問題は、実際のテキストのドロップは、ドロップした後にキャンバスに表示されず、シェルを最小化してから再度最大化した後にのみ表示されることです。このコードを変更してドロップ アクションをすぐに表示する方法を教えてください。

0 投票する
1 に答える
125 参照

java - テキストが長くなりすぎる場合は、Java でテキストを圧縮します

ソフトウェアに印刷機能を追加したいのですが、テキストを圧縮してテキスト ボックスに収まらないようにする必要があります (文字を縦方向に縮小しないでください)。

これは標準のJavaメソッドで可能ですか、または誰かが良い拡張機能を知っていますか?

添付画像のようなテキストが欲しい

ありがとう!ここに画像の説明を入力

0 投票する
1 に答える
5915 参照

java - SWTブラウザをswing jframeに埋め込む方法

SWT ブラウザーを swing jframe に埋め込みたい。サンプルを試してみましたが、ブラウザ ウィンドウをロードするにはウィンドウのサイズを変更する必要があります。サイズを変更せずにキャンバスを再描画するにはどうすればよいですか?