あいあいスクール代表
畠 茂雄(はたけ しげお)
ViralBanner の作成方法
2010年1月31日更新
もくじ
今回作成するツールの紹介 ... 3
ソースコードの作成 ... 5
(1)ViralBanner.html のソースコード ... 6
(2)ViralBanner.java のソースコード ... 7
(3)参考:レイアウトマネージャについて ... 10
- 3 –
今回作成するツールの紹介
『
ViraBanner
』
このツールは、nozan さんが紹介している【
ヴァイラルダウンローダー
】っぽく作ったツールです。
【ヴァイラルダウンローダー】の実行画面を、今回、『
Javaアプレット
』で作ってみました。
ヴァイラルとは、「
クチコミ
」という意味で、ツールを口コミで、広めていこうとするものです。
↓詳しく知りたい方は、こちらを参照して下さい(直リンク)
<nozan さんの無料レポート>
勝手に延々と、あなたのブログへのアクセスや、メルマガ読者を増やしてしまう
秘伝のバイラルマーケティングツール!!
⇒
http://www.iischool.net/download/magic.pdf
<バナー広告のように設置した例>
<主な機能>
「
認証コード
」欄には、ダウンロードできる人だけが知っているコードを入力します。
入力された認証コードが正しければ、[
ダウンロード
]ボタンをクリックすると、指定したダウンロード先へジャンプ
します。
※正しくなければ、注意メッセージを表示します。
認証コードがわからない場合、[
認証コード取得
]ボタンを クリックすると、取得方法を案内するページにジャン
プします。
※サンプルでは、[
認証コード取得
]ボタンをクリックすると、表示された画面で、すぐ認証コードを見れるようにし
てありますが、ここは、メールアドレスを入力してもらうフォーム等を設置して、リストの取得や、メルマガへの
登録をうながす用途に使えます。
- 5 –
ソースコードの作成
今回必要なプログラムのソースファイルは、
ViralBanner.java ・・・ (1)
1つだけですが、ブラウザ表示を確認するために、HTML ファイル
ViralBanner.html ・・・ (2)
を利用します。(2)のファイルをブラウザで開くと、プログラムを呼んで、表示するようになっています。
なお、(1)のファイルをコンパイルすると、
ViralBanner.class
ViralBanner$ViralListener.class
という2つのクラスファイルが出来上がります。実際に利用する場合には、
この2つのクラスファイルを配置します。
今回、画像も使っているので、jpg またはgif形式の画像ファイルが別途必要になります。
↓↓↓コンパイルの方法等につきましては、こちらをご参照下さい。
自宅でJava言語の開発環境を作る方法(最新の情報に更新しています)
⇒
http://www.iischool.net/40/41/
(1)ViralBanner.html のソースコード
以下のコードをコピーして、『ViralBanner.html』というファイル名で保管します。
バナー広告によくあるサイズの幅468ピクセル、高さ60ピクセルの大きさで表示されるようにしています。
実際に、ブログツールとして設置するには、<
APPLET
>タグの部分だけをブログツール設置場所に書き込め
ばいいのですが、置き場所を
codebase=
に指定する必要があります。
クラスファイルを、http:// ~と指定できる場所に置く必要があります。ダウンロードファイルを置く方法と同
様に置いて下さい。
↓↓↓ブログツールに書き込むコードの例
(http:// ~の部分は自分のものに変更して下さい)
<APPLET
codebase=
"http://www.iischool.net/java/" code="ViralBanner.class" width=468 height=60></APPLET>
↓↓↓ここから ViralBanner.html のソースコード
<HTML>
<HEAD>
<TITLE>ViralBanner</TITLE>
</HEAD>
<BODY>
<
APPLET
code="ViralBanner.class" width=468 height=60></
APPLET
>
</BODY>
- 7 –
(2)ViralBanner.java のソースコード
以下のコードをコピーして、『ViralBanner.java』というファイル名で保管します。
その後、正常にコンパイルすると以下の2つのクラスファイルが出来上がります。
ViralBanner.class
ViralBanner$ViralListener.class
(1)で作成した ViralBanner.html を同じ場所に置いて、ViralBanner.html をブラウザでいて正常に表示される
か確認してみましょう。
// ViralBanner のソースコード
// 変更箇所(1)から変更箇所(8)の、8箇所を変更すればOKです。
// 利用するクラスが入ったパッケージをインポートします import java.applet.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; import java.net.*;public class ViralBanner extends JApplet {
// ここで、URL や認証コードをセットする変数を用意します URL u_download, u_ninsyo, u_viral;
JTextField textfield;
public void init() {
// JApplet クラスのデフォルトのレイアウトマネージャは、 // ボーダーレイアウト
Container fc = getContentPane();
// パネル1、2、3を作る JPanel p1 = new JPanel(); JPanel p2 = new JPanel(); JPanel p3 = new JPanel();
// パネル1は、グリッドレイアウト(2行×1列) GridLayout gl = new GridLayout(2, 1);
p1.setLayout(gl);
// パネル2、3は、フローレイアウト(左寄せ) FlowLayout fl = new FlowLayout(FlowLayout.LEFT); p2.setLayout(fl);
p3.setLayout(fl);
// ここで、URL の間違いがないか判断します try {
// ツールやレポートをダウンロードする URL をセットします
u_download = new URL("http://www.iischool.net/pdf/ViralTool.pdf"); // ←変更箇所(1)
// 認証コードを取得する URL をセットします
u_ninsyo = new URL("http://www.haatdesign.com/applet20/applet20.html"); // ←変更箇所(2)
// ボタン画像をクリックするとジャンプする先の URL をセットします
u_viral = new URL("http://heihou.biz/ViralDownloader/index.php?e=webmaster@iichiyoda.com"); // ←変更箇所(3)
} catch (MalformedURLException mue) {
System.err.println("URLが見つかりませんでした"); }
// Image クラス型変数に画像データを入れる(60×60 ピクセル程度の jpg または gif 画像) Image image = getImage(getCodeBase(),"./viraldown.jpg");// ←変更箇所(4)
// Image を ImageIcon クラスに変換する ImageIcon icon = new ImageIcon(image);
// アイコンのボタンを作る JButton img = new JButton(icon);
// アプレットの背景色を指定する //fc.setBackground(Color.yellow);
// パネルの背景色を指定する(Red,Green,Blue)を 0~255 の値で自由に指定します。 Color col = new Color( 255, 228, 225 ); // ←変更箇所(5)
// 指定した色にセットします(初期色として黄色をセット) col = Color.yellow; // ←変更箇所(6)(5)で変更した場合、この行は不要です。 // アプレットの背景色を指定します p1.setBackground(col); p2.setBackground(col); p3.setBackground(col); img.setBackground(col); // ツールやレポートの案内文をここに入れます // 全角26文字で埋めること 12345678901234567890123456
JLabel label1 = new JLabel("←このヴァイラルツールっぽいブログツールの作り方を無料プレゼント!");
// ↑↑↑ 変更箇所(7)↑↑↑
// ボタンなどを用意する
JLabel label2 = new JLabel("認証コード"); textfield = new JTextField("", 9); JButton b_download = new JButton("ダウンロード"); JButton b_ninsyo = new JButton("認証コード取得");
ViralListener al = new ViralListener();
b_download.addActionListener(al); b_ninsyo.addActionListener(al);
img.addActionListener(al);
// ラベル1のフォントを設定します
Font fo1 = new Font("SansSerif",Font.BOLD,13); label1.setForeground(Color.blue);
label1.setFont(fo1);
// ラベル2のフォントを設定します
Font fo2 = new Font("SansSerif",Font.BOLD,12); //p.setForeground(Color.black); label2.setFont(fo2); // パネル2にラベル1とボタンを載せます p2.add(label1); // パネル3にラベル2とボタンを載せます p3.add(label2); p3.add(textfield); p3.add(b_download); p3.add(b_ninsyo); // ボーダーレイアウトのコンテンツ区画(西)にボタン画像を載せる fc.add(img, BorderLayout.WEST); // パネル1の上下にパネル2とパネル3を配置する p1.add(p2); p1.add(p3); // ボーダーレイアウトのコンテンツ区画(中央)にパネル1を載せる fc.add(p1, BorderLayout.CENTER); } // ボタンが押された時の処理
class ViralListener implements ActionListener {
public void actionPerformed(ActionEvent ae) { String bname = ae.getActionCommand(); if (bname.equals("ダウンロード")) { // ここに認証コードをセットします↓↓↓ if(textfield.getText().equals("happyhappy")){ // ←変更箇所(8) // ツールやレポートをダウンロードする URL へジャンプする getAppletContext().showDocument(u_download); } else { String title = "警告"; String msg = "認証コードが違っています";
JOptionPane.showMessageDialog(null, msg, title, JOptionPane.WARNING_MESSAGE);
}