0

ハイスコ​​ア テーブルを含む必要がある Visual Basic でゲームを作成しています。とという2 つの列にスコアの行を格納ListViewするという名前のコントロールを使用しています。ユーザーは、正しい場合に呼び出される ListBox に入力された単語を推測する必要があります。:に 2 つのものを設定し、両方とも type: 、 Scope: 、および Value:を設定しました。lstscoresNameScorelstwordsApplication.SettingssettingnamesettingscoreSystem.Collections.Specialized.StringCollectinouserNothing

ユーザーが保存ボタンをクリックすると、基本的にユーザー名とスコアを取得して、それぞれ設定に保存したいと考えています。そのため、次回フォームを開いたときに、設定を同じListViewコントロールに読み込むことができます。

私は数時間調査してきましたが、私のニーズにぴったり合うものを見つけることができませんでした.

私の知る限り可能な限りすべてを試しましたが、何も機能しなかったため、コードを提供できません。

誰かがこれを行う方法についてアドバイスや方向性を教えていただければ、とても感謝しています.

ありがとう

Dim arr(1) As String
    Dim score As Integer

    inputname = txtname.Text
    score = lstwords.Items.Count

    arr(0) = inputname
    arr(1) = score
    lstscores.Items.Add(New ListViewItem(arr))
4

1 に答える 1

0

Save()Reload()メソッドの組み合わせを使用して、データを保存できます。ユーザーが [保存] ボタンをクリックすると、ListView を反復処理してListView.Items[n]、名前のコレクションにコンテンツを追加し、サブアイテム ( ListViewItem.SubItems[0]) のコンテンツをスコアのコレクションに追加できます。次に、 を使用My.Settings.Save()してデータを保存します。ListView開始後にデータを元に戻すには、 My.Settings.Reload()(たとえばForm.Loadイベントで)使用して、それを繰り返します。繰り返しを保存する例を次に示します (テストされていません)。

For Each it0 in lstscores.Items
    My.Settings.settingname.Add(it0.Text)
    My.Settings.settingscore.Add(it0.SubItems[0].Text)
Next
My.Settings.Save()
于 2013-06-01T13:56:44.153 に答える