ページ 2 / 2
Posted: 2005年11月07日(月) 11:32
by 伯羽
何も出力されませんでした。なにがおかしいんでしょう。・゚・(ノД`)・゚・。
コード: 全て選択
Dim Expression[ELM(3)] = ["Angry", "Enjoy", "Sad"] As String
Dim RnS As Long
Sub Menu_SPEAKBTM_Click()
ShowWindow(hMenu,SW_HIDE)
ShowWindow(hMessage,SW_SHOW)
RANDOMIZE
RnS=Int(Rnd()*3+1)
SetDlgItemText(hMessage, MesBox, Expression[RnS])
End Sub
質問ばかりだからなんとか自己解決しようとがんばっているんですがヘルプの説明が自分的に足りなくて。。。
ほんとすみません。_|\○_
Posted: 2005年11月07日(月) 17:14
by hira
コード: 全て選択
Dim Expression[ELM(3)] = ["Angry", "Enjoy", "Sad"] As String
当方の環境では、このコードがエラーになりました。
コード: 全て選択
Dim Expression[ELM(3)] = [0, 1, 2] As Long
これはエラーにならないことから、String型は(仕様なのか未対応なのかは不明ですが)初期値の設定ができないものと思われます。
対策としては…地道に代入するしかないでしょうね(^^;
Posted: 2005年11月07日(月) 17:47
by 伯羽
そういわれるとファイルから読み込んだほうがいいと思ったんですが
そっちのほうがめんどいんですよねぇ
ファイルの読込もできないですし(´A`)←が。
Posted: 2005年11月07日(月) 21:27
by イグトランス
おっとこれは失礼しました。
さてBytePtrにすれば動くかと思いましたがだめでした。
BytePtr型でだめならもはやバグかと思いバグ報告に書いておきました。
ちなみに
Posted: 2005年11月08日(火) 19:33
by konisi
ファイルの入出力のコードなら書けるので書いておきます。
指定バイトごとに読み出す場合(ここでは、変数XByteに指定バイト数を代入してあるとして書く。)
コード: 全て選択
'ファイルを開く
Open "a.txt" As #1
Field #1,XByte
'読み出し
Get #1,1,A$
Get #1,2,B$
・
・
・
'ファイルを閉じる
Close #1
一行ごとに読み出す場合(こっちの方が便利な場合も多い。)
コード: 全て選択
'ファイルを開く
Open "a.txt" For Input As #1
'読み出し
Input #1,A$
Input #1,B$
・
・
・
'ファイルを閉じる
Close #1
文字列をByte型に変換するにはMid$関数や何かとAsc関数を使うなり、何か別のもっと便利な関数を使うなり何とかしてください。
コードを見た人は気が付いたと思いますが、僕はN88系BASICのスタイルが未だに抜けません。
Re: ちなみに
Posted: 2005年11月10日(木) 18:54
by 伯羽
んー 解決しないです、、、(´A`)
Posted: 2005年11月11日(金) 21:35
by マティ
とりあえず、以下の形で初期化を行い、プログラムの論理エラーを取る事に専念した方が良いと思います。
コード: 全て選択
Dim Expression(2) As String
Expression(0) = "Angry"
Expression(1) = "Enjoy"
Expression(2) = "Sad"
論理エラーが取れたらファイルから、パラメータを取得出来るように改造します。
コード: 全て選択
Const MaxParam = 1000 'パラメータの上限
Dim Expression(MaxParam) As String,i As Long
'読み出し
Open "Expression.txt" For Input As #1
i=0
While (Eof(1)=False)
Input #1,Expression(i)
i=i+1
If(i>MaxParam)Then
'エラー処理を書く
End If
Wend
Close #1
実行ファイルと同じ場所に、
Expression.txtを作成し、その内容を
とします。
以上で、実行可能になると思います。
解決しました!
Posted: 2005年11月25日(金) 19:02
by 伯羽
ちゃんと話してくれるようになりました!
助けて頂いた方々、ありがとうございました。
完成品は
こちら
話すだけですが。。。