1

だから今、私はいくつかの異なる氏族を名前とそれぞれの村でリストする「氏族」と呼ばれるクラスを持っています。

    static void Main(string[] args)
    {
        Clan Uchiha = new Clan("Uchiha", "Konoha");
    }

そして、これは基本的に、さらにいくつかのクランで行われます。Clan と Village の 2 つの文字列で定義されます。これは GUI アプリケーションなので、ボタンをクリックすると、クランとその村を表示するランダムな「クラン」が選択されます。自分でプロジェクトを考えることに関しては、私はまったくの初心者です。クリック イベントの実行方法は知っていますが、その方法がよくわからないので、クリックされたボタンがクランと村のテキスト ボックスに情報を出力します。

4

2 に答える 2

0

クラン (List < Clan >) が既に入力されていると仮定すると、次の機能を使用してランダムなクランを選択できます。

System.Random l_random = new System.Random();
int l_randomClanId = l_random.Next(0, l_clans.Count-1);
Clan l_randomClan = l_clans[l_randomClanId];//Where l_clans is the Clans object populated

Random Clan オブジェクトを取得したので、次の操作を実行してテキスト ボックスにデータを入力できます。

txtBoxClan.Text = l_randomClan.Clan;
txtBobVillage.Text = l_randomClan.Village;
于 2012-10-26T02:33:20.317 に答える
0

Clanこれを定義していないため、クラスでこれを行うことはできません。したがって、List<string>気にしない場合は代わりに使用しますが、この時点Clanではコレクションでなければなりません:)

これを整理するためRandomに andを使用します。List<string>

まず、コレクションにいくつかのアイテムが必要List<string>です。List<string>次のコードを使用して最初に作成しましょう

List<string> Clans = new List<string>();

次に、いくつかのアイテムを追加しましょうClans

Clans.Add("Uchiha,Konoha");
Clans.Add("Picrofo Groups,Egypt");
Clans.Add("Another Clan,Earth");
Clans.Add("A fourth Clan,Somewhere else");

ここで、ボタンがクリックされたときにこれらの項目を出力する必要があります,。各項目の最初の値と 2 番目の値を分割するスプリッターがあることを知っています。例えば。Uchihaこれは一族の名前で、最初の値はそれから区切られ、Konohaそれは一族の場所であり、2 番目の値,はスプリッターです。Random クラスも作成する必要があります。これを試してみましょう

Random Rand = new Random(); //Create a new Random class
int Index = Rand.Next(0, Clans.Count); //Pick up an item randomly where the minimum index is 0 and the maximum index represents the items count of Clans
string[] Categorizer = Clans[Index].Split(','); //Split the item number (Index) in Clans by ,
MessageBox.Show("Name:" + Categorizer[0] +" | Location: "+ Categorizer[1]); //Output the following

最後に、フォームクラスでは次のようになります

    List<string> Clans = new List<string>();
    private void Form1_Load(object sender, EventArgs e)
    {
        Clans.Add("Uchiha,Konoha");
        Clans.Add("Picrofo Groups,Egypt");
        Clans.Add("Another Clan,Earth");
        Clans.Add("A fourth Clan,Somewhere else");
    }

    private void button1_Click(object sender, EventArgs e)
    {
          Random Rand = new Random();
          int Index = Rand.Next(0, Clans.Count);
          string[] Categorizer = Clans[Index].Split(',');
          MessageBox.Show("Name:" + Categorizer[0] +" | Location: "+ Categorizer[1]);
    }

ありがとう、
これがお役に立てば幸いです:)

于 2012-10-26T02:42:41.980 に答える