バグ発生?

ActiveBasicでのプログラミングでわからないこと、困ったことなどがあったら、ここで質問してみましょう(質問を行う場合は、過去ログやWeb上であらかじめ問題を整理するようにしましょう☆)。
返信する
メッセージ
作成者
雷電

バグ発生?

#1 投稿記事 by 雷電 »

コンパイル、デバッグともひかかりませんが、実行したときにEditBox1が空になりません。間違ってはいないと思うのですが、なぜでしょう?
雷電

説明不足

#2 投稿記事 by 雷電 »

説明不足だと思うので現状を書いておきます。

ファイルを開いてEditBox1に文字列をセットした後、新規作成を押すと一番上の行の文字列が全部消える。
それで、2行目からの文字列はEditBoxに残ったまま。
UpdateWindowで直るかと思ってやってみたができなかった。
文字色を変更するために、ちょっとProcのところを弄ってますけど、そんなに間違いはないと思います。

説明とコードが足りないと思ったので、コードを転載しておきます。
ゲスト

Re: バグ発生?

#3 投稿記事 by ゲスト »

> >
> コンパイル、デバッグともひかかりませんが、実行したときにEditBox1が空になりません。間違ってはいないと思うのですが、なぜでしょう?

コード: 全て選択

SetDlgItemText(hMainWnd,EditBox1,"")
の間違いではないですよね。
雷電

#4 投稿記事 by 雷電 »

コード: 全て選択

SetWindowText(hEdit,"")
でも同じです。
関数が違ってもする動作は同じなので・・・。
雷電

#5 投稿記事 by 雷電 »

コード: 全て選択

'hEditはグローバル変数
Sub MainWnd_IDM_NEW_MenuClick()
	Dim cancel As Integer
	If fChanged Then
		' 保存するかユーザーに訊く。
        Dim ret As Long
        ret = MessageBox(hMainWnd, "内容が変更されています。保存しますか?", "AppendMissionEditor", MB_YESNOCANCEL or MB_ICONEXCLAMATION)
        Select Case ret
            Case IDYES
                file_OverWrite()

                'hEditとファイルパスの初期化
                SetWindowText(hEdit,"")
                file_path=""

                fChanged=0
            Case IDNO
                'hEditとファイルパスの初期化
                SetWindowText(hEdit,"")
                file_path=""
                
                fChanged=0
            Case IDCANCEL
                cancel = 0
        End Select
    End If

    SetDlgItemText(hMainWnd,EditBox1,"")
    file_path=""
    NameFile=""
    SetWindowText(hMainWnd,"新規アペンドミッション - AppendMissionEditor")
    fChanged=0

    UpdateWindow(GetDlgItem(hMainWnd,EditBox1))
End Sub
このように訂正しましたら直りました。
お騒がせいたしました。
返信する