Хорошо, ребята, вот мой код:
private void btn_Click(object sender, RoutedEventArgs e)
{
MessageBoxResult confirmatBoxResult = System.Windows.MessageBox.Show(
"Êtes-vous sûr ?", "Confirmer", System.Windows.MessageBoxButton.YesNo);
if (confirmatBoxResult == MessageBoxResult.Yes)
{
for (char c = 'a'; c <= 'z'; c++)
{
char ch = c;
Button btn = new Button();
btn.Content = c;
btn.Width = 60;
btn.Height = 60;
btn.FontSize = 36;
panel_lettre.Children.Add(btn);
lookupLetters[ch] = new List<Label>();
btn.Click += new RoutedEventHandler(btnLetter_Click);
void btnLetter_Click(object sender2, RoutedEventArgs e2)
{
if (lookupLetters.TryGetValue(ch, out List<Label> textList))
{
foreach (var el in textList)
{
el.Content = ch;
btn.IsEnabled = false;
}
}
else
{
foreach (var el in textList)
{
el.Content = ch;
btn.IsEnabled = false;
// not correct
}
}
}
}
foreach (char ch in txtMot.Text)
{
Label Lbl = new Label();
Lbl.Content = ch;
Lbl.Content = "_";
Lbl.FontSize = 36;
Lbl.Width = 30;
lookupLetters[ch].Add(Lbl);
panel_label.Children.Add(Lbl);
}
btnMotProposé.IsEnabled = false;
}
}
Со словарем:
public Dictionary<char, List<Label>> lookupLetters = new Dictionary<char, List<Label>>();
Мне удалось показать 26 букв алфавита.Все они являются кнопками и динамически отображаются в ярлыке при нажатии: btnClick .
Еще раз, событие, исходящее из btnLetter_Click , запускается после нажатия на каждуюbutton.
Здесь идет словарь: он переопределяет содержимое метки, (_) , чтобы заменить ее буквой угадываемого слова.
Так что в основном,
Если слово тестовое:
- Показывает: _ _ _ _
- Как только я нажимаю на правильные буквы алфавита, которые являются кнопками, он показывает буквы слова шаг за шагом, пока все буквы не будут полностью показаны.
Вот мои вопросы :
- Какмогу ли я сделать так, чтобы, если я нажму на любую букву, которая не совпадает в моем слове, здесь test , это делает букву отключенной, ( btn.IsEnabled = false; ),затем приведите MessageBox.Show ("Неверная буква!); ?
- Если слово найдено, оно произнесет: MessageBox.Show (" Хорошо сделайтеne, вы нашли слово!)
- И, скажем, после 4 попыток, если пользователь продолжит произносить ошибки, он показывает слово "угадать"?