アプリ版:「スタンプのみでお礼する」機能のリリースについて

JBuilderを使用してプログラムを組んでいるのですが、ボタンに絵を張りたいのです。

使用しているボタンはAWTコンポーネント内の"java.awt.Button"です。

ちなみにJBuilder Personal 8.0使用です。

A 回答 (2件)

絵を貼る、というか、paint()メソッドをオーバライドして


その中でdrawImage()を使えばだいたいのコンポーネントにイメージが描画できます。

Buttonにだってやればできるんです。ただ、継承しなければならないのです。
Swingの方のJButtonは継承しなくてもイメージが貼り付けられるので、その点が簡単ということです。

Buttonにイメージを貼り付けるサンプルを書きます。
(コンストラクタは省略している)
------------------
import java.awt.*;

public class ButtonA extends Button{
Image im = Toolkit.getDefaultToolkit().getImage("a.jpg");
public void paint(Graphics g){
g.drawImage(im, 3, 3, getSize().width - 6, getSize().height - 6, this);
}
}
-----------------
このButtonAを、Buttonのかわりに使用すると中にa.jpgが表示されます。
ただ、ボタンのテキストは覆い隠されてしまいます。

#Canvasを使って自作すると言ったけど、こっちの方が簡単だったな。
    • good
    • 0
この回答へのお礼

たびたびのご回答ありがとうございます。
まだJavaやJBuilder初心者の為、教えていただいたロジックをテストしてみようと思います。ありがとうございます。

お礼日時:2003/04/18 12:53

AWTのButtonには絵を貼り付けることはできなかったはずです。


SwingのJButtonにしませんか?それなら簡単なんだけど…。
もっとも全部をSwingにしなければならないなあ。

どうしてもAWTで実現するならば、Canvasを使ってボタンを自作するとか。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
>AWTのButtonには絵を貼り付けることはできなかったはずです。
そうなんですか・・・勉強不足でした。
AWTのコンポーネントで絵を張ることのできるコンポーネントはありますか?
>どうしてもAWTで実現するならば、Canvasを使ってボタンを自作するとか。
具体的にどのような事でしょう?

VBやDelphiのようには簡単でないのですね・・・

お礼日時:2003/04/18 11:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!