• 締切済み

VB6で

現在、VB5からVB6への移行作業をしています。 VB6でimComboというComboBoxコントロールを使用しているのですが、ある処理が終わると画面が初期化されこのComboBoxが何も選択されていない状態したいのですが上手くいきません。。(Imputman7.0使用) PcCombo.selectindex = -1 や PcCombo.Value ="" や PcCombo.Text = VbNullString や PcCombo.Text ="" など試行錯誤してみたのですがダメです。。 分かる方よろしくお願いします。

noname#76866
noname#76866

みんなの回答

  • dsuekichi
  • ベストアンサー率64% (171/265)
回答No.2

Imputman7.0の修正パッチは当てていますか? GrapeCity社のHPを見ると、バグレポートに、 ---------------------------------------------------- InputMan Pro 7.0J 2004/7/15 [IMPR03925] imCombo で Style プロパティを imDropDownList にした時 ClearControl メソッドを使用してもクリアにならない (中略) 詳細: imCombo で Style プロパティを imDropDownList に設定し、 実行後、リストボックスより項目を選択してテキストに表示した時、 ClearControl メソッドを使用してもテキストに表示された値がクリアになりません。 ---------------------------------------------------- というのが出ていますけど・・・これじゃないんでしょうか? #修正パッチを適応すれば直るそうです。 それとも、「ClearControl メソッド」を試していないだけとか・・・

  • pasofaq
  • ベストアンサー率73% (60/82)
回答No.1

selectindex というプロパティはありませんので、 PcCombo.ListIndex = -1 で試してみましょう。

関連するQ&A

  • 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での処理方法がありましたらお教え下さい。宜しくお願い致します。

  • vb2008 コントロール配列

    VB6からVB2008へ移行を検討しているものです。 そこで質問なんですが、VB2008でコントロールの反復処理はどう処理すればいいのでしょうか? VB6の時はコントロール配列を使用して、ForNextで繰り返せばそれらしいことはできました。VB2008はコントロール配列がサポートされていないのでどうすればいいかわかりません。みなさんはどう反復処理を行っているのか教えていただきたいと思います。 具体的な処理として、テキストボックス1~10があり、そのテキストボックスの内容を1~10の順番で、テキストボックス11~20に格納する。以上、宜しくお願いします。

  • VB.NETでのコントロールの初期化

    VB.NETでのコントロールの初期化 VBの練習を始めたのですが、各コントロールの使用するプロパティを初期化する際の処理が、下記の記述であっているか判断して頂きたく思い、質問させていただきました。 判断して頂きたい処理は、ピクチャーボックスで画像を表示させる際の記述です。  PictureBox1.Image = Nothing のように記述しているのですが、これで合っているでしょうか? また、上記のもの以外でも、初期化の記述で知っているものがありましたら、教えていただけると幸いです。 ちなみに私はラベルのテキストを初期化する際の処理として  Label1.Text = String.Empty のような、記述をしています。 以上です。宜しくお願い致します。

  • vb2005のcomboboxについて

    <form name="frm1"> <select name="permit"> <option value="0">いいよ</option> <option value="3">駄目!</option> </select> <input type="button" value="OKv" onClick='alert(frm1.permit.value)'> <input type="button" value="OKt" onClick='alert(frm1.permit.text)'> </form> Web上でこういうセレクトボックスがあったとして、画面上では「駄目!」が選択されているとします。 ここで「OKv」ボタンをクリックすると、その セレクトボックスpermit のvalueである"3"が表示されます。 ここで「OKt」ボタンをクリックすると、その セレクトボックスpermit のtextである"駄目!"が表示されます。 ウェブ上ではたったこれだけのことなんですが。 が、これをvb.net(vb 2005)でやろうとするとどうするのかわかりません・・。 comboboxのどこのプロパティに何をどうセットするのでしょうか。 ちょっと調べてみるとDataSource をセットして、DisplayMember がどうとか出てきましたが、そういうことをしないといけないのでしょうか。 こちらはDataSource も何もなく、手動で(コード上で)valueとtextを設定・取得したいだけなんですけど・・。 何か凄い間違ってるような気もするのですが・・そうでしたらその旨ご指摘くださいますようお願いします。

  • WebBrowserコントロールとMicrosoft HTML Object Library

    お世話になります よろしくお願いします OS:XP VB:6.0 現在、Dreamweberのような動きをしたくて試行錯誤しています そこでわからなくなり質問させて下さい WebBrowserコントロールローカルに保存してあるhtmlを表示して WebBrowserコントロール上でテキストを選択すると 選択されているテキストを取得するところまではできたのですが そのテキストがソースの部分のどこかというのを調べる方法はないでしょうか? やりたいことは、その選択された部分のテキストを変更できるようにしたいです。 あと、Microsoft HTML Object Libraryに関して詳しく説明してある ホームページとかないでしょうか? 以上よろしくお願いします

  • VB.net 割り込みの禁止

    Borland C-Builder++の内容をVB.net 2010に書き換えて居る者です。 TextBox等の割り込みを一時的に禁止したいのですが、良い方法はありませんでしょうか。 無ければフラグを用いて、フラグが立っている時のみ処理をバイパスさせる事を考えて居ます。 Builder では ComboBox1->OnChange = NULL ; とコーディングする事により、 void __fastcall TForm1::ComboBox1Change(TObject *Sender) { Edit1->Text = ComboBox1->Text; } への割り込みを禁止出来、 ComboBox->OnChange = ComboBox1Change; とコーディングする事により割り込みを再開出来ました。 これを void __fastcall TForm1::ComboBoxChange(TObject *Sender) {     ComboBox1->OnChange = NULL ; Edit1->Text = ComboBox1->Text;     ComboBox->OnChange = ComboBox1Change; } とコーディングする事により、2重割り込みを防止していました。 VBでこの様にイベント割り込みを一時的に禁止にする方法はありますでしょうか。 宜しくご回答下さい。

  • VB6からVB2010への変換

    VB6の資源をVB2010に移行することになりました。 とりあえずVS2010Proの評価版をダウンロードして準備をしている段階です。 色々な資料を参考にするとVB6からVB2010への変換ツール(VBUPGRADE.EXE)があることがわかりました(完全な変換はもちろん無理だとは思いますが)。 そして、VB6のプロジェクトを開くと自動的にアップグレードウィザードが起動され、変換されるとありましたが、起動しませんし、普通に開くを選択しても拡張子VBPは選択できないか、テキストとしてしか開くことが出来ません。 何か設定が必要なのでしょうか? よろしくお願いいたします。

  • コンボボックスのクリア方法について教えて下さい(vb6.5)

    コンボボックスのクリア方法について教えて下さい(vb6.5) ComboBox1で選択したものによって、 ComboBox2で表示するものを変えたいと思っています。 ただ、一度ComboBox1で選択した後にComboBox2を開くと、 ComboBox2は前回のものがどんどん足されていきます。 コンボボックスのクリア方法について、 どの様にすればよいかご教示のほど、 宜しくお願い致します。 Private Sub ComboBox1_Change() UserForm1.ComboBox2.RemoveItem (0) If ComboBox1.Text = 1 Then UserForm1.ComboBox2.AddItem "A" UserForm1.ComboBox2.AddItem "B" UserForm1.ComboBox2.AddItem "C" ElseIf ComboBox1.Text = 2 Then UserForm1.ComboBox2.AddItem "D" UserForm1.ComboBox2.AddItem "E" UserForm1.ComboBox2.AddItem "F" Else UserForm1.ComboBox2.AddItem "G" UserForm1.ComboBox2.AddItem "H" UserForm1.ComboBox2.AddItem "I" End If End Sub -------------------------------------- Private Sub UserForm_Initialize() UserForm1.ComboBox1.AddItem "1" UserForm1.ComboBox1.AddItem "2" UserForm1.ComboBox1.AddItem "3" End Sub

  • SilverLightのDataGridの表示

    VisualStudio2010のVB.NETでSilverLightを使ったプログラムの管理をしています。 画面上でDataGridにComboBoxを配置して、データを選択可能な状態にしています。 DataGrid内では、曜日毎に条件を設定していて、メインとサブの2種類の条件を設定できるようになっています。 メインのComboBoxを指定すると、サブのComboBoxの一覧がその条件に合った一覧に変わるようになっています。 このDataGridをスクロールさせたとき、先頭行のサブのComboBoxが勝手に切り替わってしまいます。 選択されているComboBoxのみが影響をうけます。 SilverLightのDataGridは表示されていないところは処理されていないということですが、 スクロールさせて隠れていたところを表示させる際に、カーソルが選択されている所も一緒に処理されてしまう状況です。 一度スクロールさせて、すべてのComboBoxが表示されると、カーソルが選択されているところが影響を受けることはなくなります。 初期表示の際に隠れている所も処理させれば、この現象が解消するのではないかと考えています。 知りたいことは、SIlverLightで初期表示の際に隠れている所の処理を実行させることは可能かということです。 わかりにくい説明で申し訳ありませんが、何かヒントでもいただければと思います。

    • 締切済み
    • XML
  • テキストファイルクリア .net2005 VB

    VB初心者です。よろしくお願いたします。 現在 .net2005 VBでPL/SQLの処理結果を「log.txt」に出力しておりますが、処理をするたびに、テキストファイルの下へどんどん追加されます。 そこで、画面上からログクリアボタンを押下すると、「log.txt」の中身が初期化されるようにしたいと考えて降ります。 どうすればよいか、サンプルのロジックを教えて頂けませんでしょうか?

専門家に質問してみよう