Flash ComboBox Itemの設定方法と値の初期化について

このQ&Aのポイント
  • Flash CS3 (AS2.0)でComboBoxの項目の初期化と値の設定方法について解説します。
  • ComboBoxのインスタンス名を「pulldown1」とし、初期表示の項目を「てりやきバーガー」とする方法を紹介します。
  • プルダウンした時の項目の順番や初期値の設定について考える方法も解説します。
回答を見る
  • ベストアンサー

Flash ComboBox Itemに関して

Flash CS3 (AS2.0)にて ComboBoxのインスタンス名を「pulldown1」とし、 これに対し pulldown1.addItem("ハンバーガー"); pulldown1.addItem("チーズバーガー"); pulldown1.addItem("てりやきバーガー"); pulldown1.addItem("フィッシュバーガー"); としています。 このままでは1つ目のItemである"ハンバーガー"がデフォルトで表示されますが、 初期状態では"てりやきバーガー"を表示したいのです。 そこで pulldown1.text = "てりやきバーガー"; を追加して、表示上初期状態で、"てりやきバーガー"にしたものの trace(pulldown1.value); で見てみると、当然の如く1つ目のItem"ハンバーガー"が出力されます。 プルダウンさせた時、項目の順番は ハンバーガー チーズバーガー てりやきバーガー フィッシュバーガー のままで、初期状態は"てりやきバーガー"を表示し、 値も"てりやきバーガー"としたい時はどうすればよいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • BlurFiltan
  • ベストアンサー率91% (1611/1754)
回答No.1

------------------------------------- pulldown1.addItem("ハンバーガー"); pulldown1.addItem("チーズバーガー"); pulldown1.addItem("てりやきバーガー"); pulldown1.addItem("フィッシュバーガー"); pulldown1.selectedIndex = 2; trace(pulldown1.value); ------------------------------------- で良いと思います。

pory_bekk
質問者

お礼

>BlurFiltanさん おぉ!そんなに簡単だったとは。 指定するナンバーは配列と同じで「0」始まりなんですね。 試してみたところ思い通りに動きました。 ありがとうございます。

関連するQ&A

  • flash comboBox

    flash CS3にてコンポーネントのcomboBoxをステージに配置し、 アイテムの追加等必要な設定を一通り行い、書き出すと正常に動作しています。 (この時書き出したswfを「xyz.swf」とします) 現在制作中のコンテンツの構成が次のようになっており メインのflashである「aaa.swf」内で 「bbb.swf」を読み込み、更に 「bbb.swf」内で「xyz.swf」を読み込んでいます。 「xyz.swf」を単体で見たときcomboBoxは正常に動作するのですが、 上記のようにswfを別のswf上に読み込んだ時、全く同じ物(xyz.swf) にもかかわらずcomboBoxが動作しません。(汗) 具体的には、comboBoxをクリックすると通常は登録されたItemがプルダウンメニューで表示されるのですが、 クリックしてもプルダウンメニューが表示されず何の反応も無いという状態です。 メインのswfから別のswfの読み込み→更に別のswfの読み込みという コンテンツの構成は変更する事はできないので困っています。 ご教授いただければ幸いです。

  • flash DataGridコンポーネント

    ComboBoxやListでアイテムを追加する際に ------------------------------------------------------- myList.addItem({label:"名前", data:"データ"}); ------------------------------------------------------- というスクリプトで、 見た目は"名前"だけが表示されますが、同時にdataとして"データ"を持っているので、 選択した時等にdata値"データ"を参照しURLに飛ばす等色々な処理が出来ます。 DataGridの際はこのように、見た目上表示される物とは別に隠れて持っているdata値を持たすにはどうすればよいのでしょうか? 例えば現在はDataGridに対して、 ------------------------------------------------------- myGrid.addItem({product:"製品名", price:"価格"}); ------------------------------------------------------- としていますが、 ------------------------------------------------------- myGrid.addItem({product:"製品名", price:"価格", data:"データ"}); ------------------------------------------------------- としたところで、DataGrid上に"data"という列が追加され、 "データ"が値として表示されてしまいます。

  • VB.2010 ComboBox 項目選択

    Builder C++ではかなりのプログラムを作成していますが、拠点でプログラムを変更出来る様にVBでプログラムを作成し直しているVBに関してはほぼ初心者です。 VBでComboBoxを使用して内容を選択させようとして居ます。 プログラムの最初でComboBoxのTextに初期値(前回選択値)を設定して居ます。 ComboBoxで選択された内容はComboBoxの内容が変更された時に次回プログラム実行時の初期表示の為にiniファイルに書き込みをして居ます。 問題はプログラムの最初に初期値を書き込んだ時にもComboBoxの内容が変更される為、内容変更の割り込みが入り、iniファイルの書き込みルーチンが動作してしまう事です。 ComboBoxのTextの書き込の時に割り込みをしなくて、選択をした時のみ割り込みが発生する割り込みがあると良いのですが、調べた範囲では無い様でした。 Builder C++ではMouseUPイベントの割り込みを使って同じ機能を実現させたのですが、VBのMouseUpイベントでは一つ前に選択された内容しか入って来て居ない様です。 MouseUpのイベント割り込み先には以下のコーディングをして居ます。 Private Sub ComboBox1_MouseUp(ByVal sender・・・・・ Label1.Text = ComboBox1->Text End Sub しかし、これだと選択した時は前回選択された内容が表示されてしまいます。 当然 Private Sub ComboBox1_SelectedIndexChanged(ByVal sender ・・・ Label1.Text = ComboBox1->Text End Sub の場合は選択された内容が表示されます。 双方共、実行後のComboBox自体の表示内容は選択されたものになって居ます。 MouseUpのイベントの時にも選択された内容が表示されれば、このイベントでは ComboBox1->Text 初期値を設定した時はイベントが発生しないので都合が良いのですが、一つ前に選択された内容しか表示されません。 MouseUpの時には未だ内部処理が終了していないので新しい内容が表示出来ないのでしょうか。 Builder C++ には Application->ProcessMessages()と言う、他のタスクを先に実行させる関数がありますが、多分VBにもその様な関数があると思いますので、それを挿入すれば最新の状態を入手できるものでしょうか。 上記目的を達成出来る方法はありますでしょうか。 無ければフラグを使用して、ComboBox1->Text に初期値を設定した時には割り込み先でiniファイルの書き込みをしない様にプログラムする予定です。 当然、初期値を表示して居るのですから初期値設定時に再度iniファイルに書き込みがあっても問題は無いのですが、実際には動作していけないプログラムを書きますので、初期値書き込み時には割り込みが無い様にしたいのです。 VBでの処理方法がありましたらお教え下さい。宜しくお願い致します。

  • エクセルVBAでコンボボックス(2)

    少し前に次の質問をしました。 http://okwave.jp/qa/q6703161.html 前回の質問は、エクセルシート上に置いたコンボボックスに初期値として リストを表示させたいという内容です。(セル上の値を持ってくるのではなくて) この質問は以下のコードで解決したとお礼欄に書きました。 Private Sub ComboBox1_DropButtonClick() ComboBox1.Style = fmStyleDropDownList ComboBox1.Clear ComboBox1.AddItem "りんご" ComboBox1.AddItem "ばなな" ComboBox1.AddItem "みかん" End Sub ユーザーは、リストから選ぶときに、DropButtonをクリックします。そのときに コードに記述したリストがリストに入力されるという仕組みです。 さて、これを実際に動かしてみると、リストが表示されるのはいいのですが、 目的のものをクリックしても、選ばれた状態になりません。 動作詳細説明: ドロップボタンをクリックすると、コンボボックスからべローンとリストが表示されます。 たとえば、ばななを選択しようとしてばななをクリックします。その瞬間表示された リストは消えますが、コンボボックスには何も選択されていない状態になってしまいます(空欄)。 本来ならば、ばななが表示されなければなりません。 ただし、ドロップボタンでリストを表示させずに、キーボード矢印キーでリストを順番に 表示させると、選択状態にすることはできるようです。 コード中の ComboBox1.Clear を書かないと、上記のような現象は起きませんが、ドロップボタンを押すたび、設定したリストが 無駄に追記されていってしまいます。 どのようにしたら良いのでしょうか

  • ComboBoxであらかじめ選択

    いつもお世話になっています。 Excelファイルから年月日を入力し、帳票を出力するマクロを作っています。 月と日はコンボボックスからの選択とさせるため    Private Sub Workbook_Open()     Dim i As Integer    'カウンタ     For i = 1 to 12        Sheet1.ComboBox1.AddItem(i)     Next i    End Sub と記述したのですが、起動時にすでに現在月と現在日が 選択されているようにした方が使い勝手が良いと思いました。 (例:7月25日にExcelを立ち上げるとコンボボックスの値は7月25日) が、NowMonth = Format(Date, "m")で現在月を取得し i=NowMonthの時Selected・・・ができなくて困っています。 どうしたら選択表示された状態になるのでしょうか? ご存知の方、教えてください。

  • Excel:VBAでコンボボックスを活用する方法

    はじめまして。Excel2000でアンケートシートを作りたいと思っています。 その回答をコンボボックスから選ぶようにしたいのですが、「違う質問だけど同じ選択肢」というのがたくさんあるので簡潔にしたいのです。 このサイト等ネットで調べるとコントロールに変数を持たせる方法として Control(ComboBox & i)とか Me(ComboBox & i) というのを目にしましたが、どちらもこの状態には該当しないのかうまくいきませんでした。 コンボボックスごとにソースを作るしかないのでしょうか? 理想としてはforループでコンボボックスの回数だけ回して、if文でComboBox1と3と4と7には○○○、2と5と6には△△△を表示するようにできたらいいなぁと思っています。 (あくまで理想のソースです。) For i = 1 To 30 If i = 1 Or 3 Or 4 Or 7 Then With ComboBox & i(←ここが知りたいです☆) .Clear .AddItem "非常に重要" .AddItem "重要" .AddItem "少し重要" .AddItem "重要ではない" End With ElseIf i = 2 Or 5 Or 6 Then With ComboBox & i(←ここが知りたいです☆) .Clear .AddItem "はい" .AddItem "いいえ" End With End If Next i いかがでしょうか?☆部分をどうにかすることで解決するのでしょうか?他に方法があったらぜひご教示ください。 そもそもコンボボックスの作り方にも自信がありません。 以前に少しだけVBを経験してますが、ほぼ初心者です。 よろしくお願い致します。

  • VB6 コントロールボックス内のインデントについて

    VB6でプログラミングをしています。 コンボボックスにDBから取得したデータをセットしているのですが、プルダウンでデータを表示したところ、インデックスがずれてしまいます。 '△=半角スペース ---ソース--- combo.AddItem Left$(Trim(mRs.Fields"CODE").Value) "△△△",12) & "△" & Trim(mRs.Fields("ITEM").Value ---プルダウン表示(実行結果)--- AAA△△△△あいうえお B123△△△かきくけこ ※ITEMのインデックスがずれてしまう。 ちなみにコンボボックスのフォントはMSゴシックを指定しています。 どなたかプルダウン内の表示を統一する方法について教えて頂けないでしょうか?

  • コントロールボックスの表示について

    VB6でプログラミングをしています。 コンボボックスにDBから取得したデータをセットしているのですが、プルダウンでデータを表示したところ、インデックスがずれてしまいます。 '△=半角スペース ---ソース--- combo.AddItem Left$(Trim(mRs.Fields"CODE").Value) "△△△△△△△△",8) & "△" & Trim(mRs.Fields("ITEM").Value ---プルダウン表示(実行結果)--- あいう△△△テスト1 B123△△△△△テスト2 ※ITEMのインデックスがずれてしまう。 ちなみにコンボボックスのフォントはMSゴシックを指定しています。 どなたかプルダウン内の表示を統一する方法について教えて頂けないでしょうか?

  • SkyDriveが使用できない、アイテムがない

    skydriveに写真をアップロードした後、skydriveにアイテムが存在しない、または使用できない状態 になっている、と表示されたまま、以後使用できません。良い解決策があれば、教えてください。

  • FLASHが起動しません・・・

    最近購入したマウスコンピュータ製のパソコン(windowsXP)にSTUDIOMX2004をインストールしました。 DreamWeaverなど全てのソフトは起動するのにFLASHだけが起動しません。FLASHプレイヤーは問題なく起動します。 アンインストールとインストールや再起動など試してみましたがダメでした。 インストールCDに破損があるのかもと思い、ためしにSTUDIOMXをインストールしてみたのですが、これもSTUDIOMX2004同様FLASHだけが起動しませんでした。 見た感じでは ・起動するときに表示されるFLASHの画面が表示され、スタイルの初期化やらテクスチャの何とかなどが画面右下に出て、フォントの初期化まで出た段階でエラーが出ます。よくある「マイクロソフトに送信しますか?」みたいな画面です。 解決法わかる方がいらっしゃったらお教えいただければと思います。 なお、パソコンに関してそれほど詳しくないのでわかりやすくコメントいただければ幸いです。 PCのスペックなど補足することがありましたら仰ってください。 PC:マウスコンピュータ製    (ソフマップで購入したフライドフィッシュバーガー) CPU:Core 2 Duo E8200(2.66GHz) メモリ:1GB HDD:320GB ドライブ:DVDスーパーマルチ グラフィック:GeForce8600GT

専門家に質問してみよう