今JAVAアプレットでプログラムを作っています。

Choice・TextArea等のオブジェクトを作り、配置してあります。
それぞれブラウザ上で選択・入力をするわけですが、入力ミスや選択ミス、再
度選択しなおしなどが発生した時、リセットボタンを押して選択したものを全
てデフォルトに戻したいんです。HTMLの「input type="reset"」と同じよう
な働きをさせたいんです。
色々調べたのですが、調べ方が悪いのか、情報がなくて困っています。

おわかりになるかた教えてください。よろしくお願いします

A 回答 (2件)

TextArea textArea = new TextArea();


で作ったtextAreaに文字書きこんだあとでまっさらにしたいのなら、
textArea.setText("");
初期値が"hogehoge"なら
textArea.setText("hogehoge");

初期値設定してるところでやっていることと同じことを
すればいいだけで、
同じコード書くのは無駄だから、
最初から「初期値設定メソッド」を切り分けておいて、
initのなかでもリセットボタンが押されたときの処理でも
初期値設定メソッドを呼び出せばよいですよー。

というのはKanataさんと同じこと言ってるですね。
失礼しましたm(__)m

と、思ったのですが、TextAreaのメソッドみてたら、
文字列を「追加」する
append(String str)
は載っていても、文字列を「設定」する
setText(String t)
は載っていないのですね。
「調べられなかった」てこれでしょか?
TextAreaはTextComponentを継承していますので、
TextComponentのメソッドも使えるです。
使いたい部品に欲しいメソッドがなければ
親クラスのメソッドも探してみるです。
setTextはTextComponentのメソッドです、
ってそゆこと言ってるではないですか?(^_^;)
意図組んでませんでしたらごめんなさいm(__)m
    • good
    • 0

最近アプレットには触っていないので、確実か


どうか分かりませんが、私ならば以下のように
行います。
1.init()関数でTEXTAREAなどを初期化するので、
 そのために初期化用の関数を作成する。
 #initialize()とか。init()関数では他の
 #処理も必要になるので、別関数が都合がよい。
2.リセットしたいボタンにinitialize()関数を
 呼び出す処理を書く。

これだけでいいと思いますが・・・
ではでは☆
    • good
    • 0

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QINPUTの内容をフォームの送信先に指定したいのですが、やり方がわかり

INPUTの内容をフォームの送信先に指定したいのですが、やり方がわかりません。

検索機能をつけようとしています。
例えば
『ほげほげ』と入力し検索ボタンを押すと、
『key/ほげほげ.html』というファイルを呼び出す。
という風にしたいと思っているのですが、どのようにすればいいのかわからず行き詰っていまってしまいました。
なお、『key/ほげほげ.html』というファイルが呼び出すことができれば、.htaccessで検索できるところまでは完成しているのですが、フォームの送信のところで行き詰っていますす。

ご存知の方がいらっしゃいましたら、お手数ですがご教示ください。
よろしくお願いいたします。

Aベストアンサー

INPUTの内容の取得は
<input type='text' id='key'></input>
に対して

 document.getElementById('key').value

で取得出来ます。

ボタンを押したとき、javascriptの関数を実行するのは、

 <button onclick='func();'>検索</button>

 function func(){
  ---------------
 }

です。

ページ呼び出しなら、

 location.href = URL;

とか、フォームのサブミットを使うなら

 form.action = URL;
 form.submit();

で.......

QChoiceから選択して文字列を取得

Choiceで選択した項目をテキストフィールドに表示させたいのですが、文字列の取得ができないようです。
お助け下さい。よろしくお願い致します。(;_;)

import java.awt.*;
import java.awt.event.*;

public class ChoiceTest extends Frame implements ItemListener{

TextField jt;
Choice ch;
Label titleLabel;
String cData[]={"サッカー","バレーボール","柔道","水泳","バスケット
ボール","野球"};

public static void main(String[] args){

ChoiceTest f=new ChoiceTest();

f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e)
{System.exit(0);}
});
f.setVisible(true);
}
ChoiceTest(){
setTitle("リストメニュー");
setSize(300,200);

titleLabel=new Label("選んでください");

Choice ch=new Choice();
for(int i=0; i<cData.length; i++)
{
ch.addItem(cData[i]);
}
ch.addItemListener(this);


jt=new TextField("ここに表示");

add(titleLabel,BorderLayout.NORTH);
add(ch,BorderLayout.CENTER);
add(jt,BorderLayout.SOUTH);
}
public void itemStateChanged(ItemEvent e)
{

if (e.getItemSelectable() == ch)
{
jt.setText(ch.getSelectedItem());
}

}
}

Choiceで選択した項目をテキストフィールドに表示させたいのですが、文字列の取得ができないようです。
お助け下さい。よろしくお願い致します。(;_;)

import java.awt.*;
import java.awt.event.*;

public class ChoiceTest extends Frame implements ItemListener{

TextField jt;
Choice ch;
Label titleLabel;
String cData[]={"サッカー","バレーボール","柔道","水泳","バスケット
ボール","野球"};

public static void main(String[] args){

...続きを読む

Aベストアンサー

こんばんは。
イージーミスのようです。

> Choice ch=new Choice();

コンストラクタ内でもう一度"ch"を宣言してしまっています。
なのでインスタンス変数の"ch"はnull(空)のままです。

ch = new Choice();

とすればうまくいくと思います。

Qtextareaの選択された文字列の取得

HTMLエディタを作ろうとしています。

textAreaの選択された文字列の開始桁数・終了桁数を取得するにはどのようにすればよいのでしょうか?

var selected_text;
if (document.getSelection) // Moz
{
selected_text = document.getSelection();
}
else if (document.selection && document.selection.createRange) // IE
{
rng = document.selection.createRange();
selected_text = rng.text;
}
alert(selected_text);

これで、選択された内容は取得できたのですが、初めと終了の桁数が取れていません。
クロスブラウザに対応したく、IE6以上、FF3、Opera9.5、Safari3.1、Choromeにて動作を確認したいのですが、お分かりになる方いましたら、よろしくお願いします。

HTMLエディタを作ろうとしています。

textAreaの選択された文字列の開始桁数・終了桁数を取得するにはどのようにすればよいのでしょうか?

var selected_text;
if (document.getSelection) // Moz
{
selected_text = document.getSelection();
}
else if (document.selection && document.selection.createRange) // IE
{
rng = document.selection.createRange();
selected_text = rng.text;
}
alert(selected_text);

こ...続きを読む

Aベストアンサー

http://www.tagindex.com/cgi-lib/q4bbs/patio.cgi?mode=view&no=1886

QINPUTで入力された値やSELECTで選択された値の取得

以下のようなHTMLで出力されるページにおいて入力された値を取得したいと思っております。

<div id="div1">
現在<input type="text" name="TXT1" id="TXT1" size="10">が入力されています。
<br>
現在<select size="1" name="SLCT1" id="SLCT1">
<option>項目1</option>
<option>項目2</option>
<option>項目3</option>
</select>が選択されています。
</div>


値を取得するには
v1 = document.getElementById("TXT1").value
で取得できるのはわかっているのですが

たとえば、TXT1に「文字列1」を入力し、SLCT1で「項目2」を選択している状態で、

"現在文字列1が入力されています。現在項目2が選択されています。" のようにDIV1の中に表示されている文字列全体を取得することはできるのでしょうか。

IEでinnerTEXT、FirefoxでtextContentを利用して取得を試みたのですが、うまくいきません。
何かいい方法があればご教授願えますでしょうか。

現在想定している状況ですと、DIVの中に配置されるINPUTやSELECTの数なども不定でして、それら要素のidも不定であります。

よろしくお願いいたします。

以下のようなHTMLで出力されるページにおいて入力された値を取得したいと思っております。

<div id="div1">
現在<input type="text" name="TXT1" id="TXT1" size="10">が入力されています。
<br>
現在<select size="1" name="SLCT1" id="SLCT1">
<option>項目1</option>
<option>項目2</option>
<option>項目3</option>
</select>が選択されています。
</div>


値を取得するには
v1 = document.getElementById("TXT1").value
で取得できるのはわかっているのですが

たとえば、TXT1に「文字...続きを読む

Aベストアンサー

divの子供ノードを取ってnodeValue != nullならnodeValue。
nodeValue == nullでそのノードのnodeNameがbr以外の時valueを参照し順番に足し算したら如何でしょうか。

記憶が曖昧ですがDOMにはchildrenがありますが、ELEMENT NODEしか取れないかもしれません。
もしそうなら下の方法でTEXT NODEも取れるようにすれば良いですね。

children(document.getElementById("div1"))
function children(e){
var childern = []
var o = e.childNodes
for(var i = 0;i < o.length;i++){
if(o[i].parentNode == e){ children.push(o[i]) }
}
return childern
}


そうするとchildernには
childern[0].nodeName #text
childern[0].nodeValue 空白
実際の文字 \n

childern[1].nodeName #text
childern[1].nodeValue 現在
実際の文字 現在

childern[2].nodeName input(IEでは大文字で返しFirefoxでは小文字で返すと思いますのでnodeNameを比較する時はtoLowerCase()などで小文字か大文字に変えて比較すると良いかも知れません)
childern[2].nodeValue null
childern[2].value 入力された文字

childern[3] nodeName #text nodeValue が入力されています。 実際の文字 が入力されています。
childern[4] nodeName br nodeValue null
childern[5] nodeName #text nodeValue 空白 実際の文字 \n
childern[6] nodeName #text nodeValue 現在 実際の文字 現在
childern[7] nodeName select nodeValue null value 選択されている項目のvalue値

こんな感じになると思います。
\n,\r,\tはブラウザによって無視する場合も有りますが空白なので気にする必要はないと思います。

divの子供ノードを取ってnodeValue != nullならnodeValue。
nodeValue == nullでそのノードのnodeNameがbr以外の時valueを参照し順番に足し算したら如何でしょうか。

記憶が曖昧ですがDOMにはchildrenがありますが、ELEMENT NODEしか取れないかもしれません。
もしそうなら下の方法でTEXT NODEも取れるようにすれば良いですね。

children(document.getElementById("div1"))
function children(e){
var childern = []
var o = e.childNodes
for(var i = 0;i < o.length;i++){
if(o[i].parentNode == e...続きを読む

Qアプレットを実行すると、×が表示され、Javaアプレットの読み込みに失敗しました。のメッセージが表示されます。

Java JDK5をインストールしました。

C:\Program Files\Javaに
jdk1.5.0_06
jre1.5.0_06
がインストールされています。

コンパイルは、PATHにC:\Program Files\Java\jdk1.5.0_06\binを追加すれば、できるようになりました。


Javaアプレットの読み込みに失敗しました。のメッセージが表示されます。


// 図形の表示

import java.applet.*;
import java.awt.*;

public class Test_0002 extends Applet{
public void paint(Graphics g){
g.fillOval(0, 0, 200, 100);
}
}

Aベストアンサー

HTMLのソースとclassファイル(またはjarファイル)の配置はどうなっていますか?
読み込みに失敗したのなら、classファイルが読み込めていない可能性が高いです。


人気Q&Aランキング

おすすめ情報