プログラムdeタマゴ

nodamushiの著作物は、文章、画像、プログラムにかかわらず全てUnlicenseです

JAVAの描画

読み込み中の画像を表示させる

↑というのがググっても出てこなかったのでやってみた。 Toolkit.createImageやApplet.getImageなどで画像を読み込むと非同期で読み込んでくれる。 この読み込み状況はGraphics.drawImageやImage.getWidthなどを呼び出して、ImageObserverを登録することで逐…

BufferedImageについて

さて、今日はBufferedImageについて。BufferedImageはデータをビット単位で我々が直接弄ることの出来るImage。 BufferedImageの作り方は表示用なら、コンポーネント内から BufferedImage img = getGraphicsConfiguration().createCompatibleImage(width,heig…

間違いを正しく間違って描画する

@Override protected void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2 = (Graphics2D)g; g2.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_OVER,0.5f)); g2.drawString("俺に任せろー!バリバリー!",0,20); } …

親コンポーネントは描画されるとは限らない

ところで、先ほどの間違ったソースを実行すると結果の様に表示されるのは一瞬で、次からはこんな風にきちんと描画されていたりしませんか? (何故か正しく描画される間違ったソースの図) 場合によっては最初からこう描画されるかも知れません。 何故なんで…

Graphicsの設定を弄るべからず

今日はJAVA内部にまで踏み込んだ画面描写についての濃い内容を書こうかなと思っています。Synth Look and Feelとかについては私も分からないので触れません。 結構濃い内容だから投稿を数回に分けると思ふ。JOGLについては、数ヶ月後に悶々書き並べることに…

JAVAで透明ウィンドウ

Java7でやり方が変わりました。記事 この記事はJRE1.6での内容になります。 知らなかった。JAVAのJFrameは半透明にならないってずっと思っていたよ。 上の図はJDialog(を拡張したクラス)を半透明で表示したところです。 シンプルだけど格好よくね?ただ、W…