0

フォルダに一連の画像があり、画像を繰り返すことができない回数をユーザーが言うことができる状態で画像をランダムに表示したい。つまり、10 個の画像とユーザー入力 3 がある場合、最近表示されなかった他の画像 (最近表示された 3 つを除く) をランダムな順序で表示する必要があります。

4

1 に答える 1

2

Listすべてのファイル名を含む aを作成します。n同じ画像の 2 つの表示の間にある画像の最小数を とします。

var list = new List<string>();
// Fill list with all filenames ...

次に、範囲から[0..len(List)-n]ランダムに画像の1つを選択するだけです

// Initialization of random number generator just once...
var rand = new Random();
// ...

var index = rand.Next(list.Count - n);
var nextImage = list[index];

次に、画像を削除してリストの最後に置きます。

list.RemoveAt(index);
list.Add(nextImage);

nextImage次の画像が含まれています。

于 2012-08-11T15:01:02.357 に答える