[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2005/04/07(Thu) 15:31
投稿者名:ぴん
Eメール:
URL :
タイトル:
ListBoxのデータをテキストファイルに保存
はじめまして。ぴんと申します。
普段は質問はしないで見ている側のですが、どこを検索してもこのやりかたが見当たらなかったので
質問をさせてください。また、誰かの質問でこのことがでて来ていたら本当に申し訳ありません。

開発環境:VB6.0、Win2000

1.テキスト1、2を作成します。
2.テキスト1,2の内容をボタンを作成して、ボタン(登録)を押すと、リストボックスの方に2

の内容が  隣同士に表示されるまではできました。

ここで次の課題で悩んでいます。
3.また上記のボタン以外にリストに表示されたデータを読み込み、書き込みできるボタンを作らな

てはならないのですが、
Private Sub Command1_Click()
Dim Fname As String
Dim LoadLine As String
Dim LoadText As String
Fname = "myFile.txt"
'LoadText = ""
  Open Fname For Append As #1
Print #1, Text1.Text & " " & Text2.Text
Do While Not EOF(1)
Loop
Close #1
End Sub
の書き込みボタンだと、リストから読むのではなく、リストにデータを受け渡したテキストから
内容を読んでしまうのです。
テキストからではなく、リストの2つのデータをテキストにいれたいのです。
もう一つは、読み込みなのですが全くわかりません。
こちらのサイトを参考にさせていただいたのですが、知識不足のため、うまくいきません。
Private Sub Command2_click()
Dim strTextLine As String
    Dim strTxtDat   As String
    Fname = "myFile.txt"
    intFileNo = FreeFile
    Open "myFile.txt" For Input As #intFileNo
  Do While Not EOF(intFileNo)
        Line Input #intFileNo, strTextLine
        strTxtDat = strTxtDat & strTextLine & vbCrLf
    Loop
    Text1.Text = strTxtDat
  Close #intFileNo
End Sub
と記述したのですが、テキスト1に、読み込んだ内容が...と記述されるくらいで、
これもリストの方に表示させたいのですが、
もし、こういうような内容の課題等を行なったかた等いらっしゃいましたら、
知識不足なわたくしで申し訳ありませんが、お教え願いたいと思います。

投稿時間:2005/04/07(Thu) 16:02
投稿者名:ガッ
Eメール:
URL :
タイトル:
Re: ListBoxのデータをテキストファイルに保存
> 1.テキスト1、2を作成します。
TextBox?それともテキストファイル?
それともただのString型の変数?

> 2.テキスト1,2の内容をボタンを作成して、ボタン(登録)を押すと、リストボックスの方に

> つ
> の内容が  隣同士に表示されるまではできました。
この説明文がよくわかりませんでした。
もしかしたら、「ボタンを押すと、二つのテキストボックスのテキストが、リストボックスに追加され
る」ということでしょうか?
まぁ…ココまでは出来ているようなので、少し疑問に思っただけです。


> ここで次の課題で悩んでいます。
課題…学校の?(ぇ

> 3.また上記のボタン以外に
リストボックスのリストに、テキストボックスのテキストを追加する機能を持ったボタン以外に、

> リストに表示されたデータを読み込み、書き込みできるボタン
リストボックスのリストに追加するデータの読み込みが出来るボタンと、
既に追加されているリストを書き込みできるボタン
…ということは二種類ということですな。

> を作らなくてはならないのですが、
を作って欲しいのですが(Σ
じゃなくて、ヒントが欲しいのですね(orz

> Private Sub Command1_Click()
>  Dim Fname As String
>  Dim LoadLine As String
>  Dim LoadText As String
>  Fname = "myFile.txt"
>  'LoadText = ""
>   Open Fname For Append As #1
>  Print #1, Text1.Text & " " & Text2.Text
>  Do While Not EOF(1)
>  Loop
>  Close #1
>  End Sub
> の書き込みボタンだと、リストから読むのではなく、リストにデータを受け渡したテキストから
> 内容を読んでしまうのです。
> テキストからではなく、リストの2つのデータをテキストにいれたいのです。
…「書き込みボタン」と意味づけているなら「テキストの内容を読み込んでしまう」のは間違いでしょ
う?
まぁ、この"Command1_Click()"でしたいことは、およそ
・リストボックスのリストを書き込みたい。
と言うことなのだとおもいます。
それなら"Text1"は出番ではなく、リストボックスの出番だと思います…
が、Text1のデータを書き込んでいますし、Do〜Loopが空ループですし、
やりたいと書いている事の差が激しいので、貴方が本当にやりたい事が分かりませんでした。
↑これは人に訊くのではなく貴方が再考するべき問題だと思います。


> もう一つは、読み込みなのですが全くわかりません。
書き込みも分かっていないようでしたしね(orz

> こちらのサイトを参考にさせていただいたのですが、知識不足のため、うまくいきません。
> Private Sub Command2_click()
> Dim strTextLine As String
>     Dim strTxtDat   As String
>     Fname = "myFile.txt"
>     intFileNo = FreeFile
>     Open "myFile.txt" For Input As #intFileNo
>   Do While Not EOF(intFileNo)
>         Line Input #intFileNo, strTextLine
>         strTxtDat = strTxtDat & strTextLine & vbCrLf
>     Loop
>     Text1.Text = strTxtDat
>   Close #intFileNo
> End Sub
> と記述したのですが、テキスト1に、読み込んだ内容が...と記述されるくらいで、
まぁ、"Text1.Text = strTxtDat"と書いてあるだけなので、「そういう風に動くように書い
た」としかい
えません。

> これもリストの方に表示させたいのですが、
リストボックスのリストにデータを追加する動作を書き込んだらどうでしょう?
たとえば、
ListBox1.Add "一行追加"
とすれば、リストボックス:ListBox1のリストに文字列を追加することができます。

> もし、こういうような内容の課題等を行なったかた等いらっしゃいましたら、
> 知識不足なわたくしで申し訳ありませんが、お教え願いたいと思います。
全体的にぐちゃぐちゃ感がすごいので、まぁかなり手直しが必要かもしれません。
そして「かなり手直し」をすることは、
「仕様を練って、それに基づいてコードを書き直さないといけない」のと同じです(と私は思います)。
で、私はその気力が無いのでココで失礼します。

ところで、貴方は最初に
> 普段は質問はしないで見ている側のですが、どこを検索してもこのやりかたが見当たらなかったの

> 質問をさせてください。
と書いていますが、途中で、
> こちらのサイトを参考にさせていただいたのですが、知識不足のため、うまくいきません。
とも書いていますよね?
これは、「全てに適ったサンプルがないかなー?」という風に探していたのでしょうか…?
それなら、ネットで探すよりも身近な人と相談をしたほうがいいのかもしれません。

※長々と失礼しました。

投稿時間:2005/04/07(Thu) 16:09
投稿者名:ぴん
Eメール:
URL :
タイトル:
Re^2: ListBoxのデータをテキストファイルに保存
>ガッ様
 お返事の方ありがとうございました。
 もう一度知識不足の点を補い、書き込み方も学習してからもう一度登校したいと思います。
 本当にありがとうございます。