tabControl1.Visible = true;
var rnd = new Random();
var shuffledWords = Words.OrderBy(x => rnd.Next()).Select(x => x.Value).ToList();
var chosenWords = new List<;string>(); // заменяем ";" на ","
for (int i = 0; i <; 10; i++)
{
var word = shuffledWords[i];
if (chosenWords.Contains(word))
{
i--;
continue;
}
chosenWords.Add(word);
}
var labels = new Label[10];
for (int i = 0; i <; 10; i++)
{
var label = tabControl1.TabPages[1].Controls.Find($"label{i + 1}", true).FirstOrDefault() as Label; // добавляем проверку на наличие элемента и преобразуем результат в Label
if (label != null)
{
label.Text = chosenWords[i];
}
}
Из представленного кода не ясно, какие значения содержат переменные Words и tabControl1, поэтому я предположу, что Words - это словарь со строковыми ключами и значениями, а tabControl1 - это элемент управления TabControl, содержащий две вкладки, вторая из которых содержит 10 элементов управления Label.@Добрый робот (ChatGPT)
c# Код не добавляет на label слова
Код:tabControl1.Visible = true; var rnd = new Random(); var shuffledWords = Words.OrderBy(x => rnd.Next()).Select(x => x.Value).ToList(); var chosenWords = new List<;string>(); // заменяем ";" на "," for (int i = 0; i <; 10; i++) { var word = shuffledWords[i]; if (chosenWords.Contains(word)) { i--; continue; } chosenWords.Add(word); } var labels = new Label[10]; for (int i = 0; i <; 10; i++) { var label = tabControl1.TabPages[1].Controls.Find($"label{i + 1}", true).FirstOrDefault() as Label; // добавляем проверку на наличие элемента и преобразуем результат в Label if (label != null) { label.Text = chosenWords[i]; } }
Как сделать чтобы код добавлял слова на метки(label)
tabControl1.SelectTab(1); // переключаемся на вторую вкладку
var rnd = new Random();
var shuffledWords = Words.OrderBy(x => rnd.Next()).Select(x => x.Value).ToList();
var chosenWords = new List<string>();
for (int i = 0 i < 10 i++)
{
var word = shuffledWords[i]
if (chosenWords.Contains(word))
{
i--;
continue;
}
chosenWords.Add(word);
}
for (int i = 0 i < 10 i++)
{
var label = tabControl1.TabPages[1].Controls.Find($"label{i + 1}", true).FirstOrDefault() as Label
if (label != null)
{
label.Text = chosenWords[i]
}
}
это я уже давно подметил. И в операторе for он ставит лишние ; Спасибо за помощь.@zuvl косяк в том, что после символа < он вечно ставит ; пофиксил.
private void button1_Click(object sender, EventArgs e)
{
tabControl1.Visible = true;
tabControl1.SelectTab(0); // переключаемся на вторую вкладку
var rnd = new Random();
var shuffledWords = Words.OrderBy(x => rnd.Next()).Select(x => x.Value).ToList();
var chosenWords = new List<string> ();
for (int i = 0; i < 10; i++)
{
var word = shuffledWords[i];
if (ChosenWords.Contains(word))
{
i--;
continue;
}
chosenWords.Add(word);
}
var labels = new Label[10]; // Ошибка CS0104 "Label" является неоднозначной ссылкой между "System.Windows.Forms.Label" и "System.Reflection.Emit.Label".
for (int i = 0; i <10; i++)
{
var label = tabControl1.TabPages[0].Controls.Find($"label{i + 1}", true).FirstOrDefault() as Label; // Ошибка CS0104 "Label" является неоднозначной ссылкой между "System.Windows.Forms.Label" и "System.Reflection.Emit.Label".
{
label.Text = chosenWords[i];
}
}
timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
if (label1.Visible = True) // Ошибка CS0103 Имя "True" не существует в текущем контексте.
{
label1.Visible = false;
label2.Visible = false;
label3.Visible = false;
label4.Visible = false;
label5.Visible = false;
label6.Visible = false;
label7.Visible = false;
label8.Visible = false;
label9.Visible = false;
label10.Visible = false;
timer1.Stop();
}
else
{
label1.Visible = true;
label2.Visible = true;
label3.Visible = true;
label4.Visible = true;
label5.Visible = true;
label6.Visible = true;
label7.Visible = true;
label8.Visible = true;
label9.Visible = true;
label10.Visible = true;
}
}
@Добрый робот (ChatGPT)
c# Ошибки в коде
Как исправить эти ошибкиКод:private void button1_Click(object sender, EventArgs e) { tabControl1.Visible = true; tabControl1.SelectTab(0); // переключаемся на вторую вкладку var rnd = new Random(); var shuffledWords = Words.OrderBy(x => rnd.Next()).Select(x => x.Value).ToList(); var chosenWords = new List<string> (); for (int i = 0; i < 10; i++) { var word = shuffledWords[i]; if (ChosenWords.Contains(word)) { i--; continue; } chosenWords.Add(word); } var labels = new Label[10]; // Ошибка CS0104 "Label" является неоднозначной ссылкой между "System.Windows.Forms.Label" и "System.Reflection.Emit.Label". for (int i = 0; i <10; i++) { var label = tabControl1.TabPages[0].Controls.Find($"label{i + 1}", true).FirstOrDefault() as Label; // Ошибка CS0104 "Label" является неоднозначной ссылкой между "System.Windows.Forms.Label" и "System.Reflection.Emit.Label". { label.Text = chosenWords[i]; } } timer1.Start(); } private void timer1_Tick(object sender, EventArgs e) { if (label1.Visible = True) // Ошибка CS0103 Имя "True" не существует в текущем контексте. { label1.Visible = false; label2.Visible = false; label3.Visible = false; label4.Visible = false; label5.Visible = false; label6.Visible = false; label7.Visible = false; label8.Visible = false; label9.Visible = false; label10.Visible = false; timer1.Stop(); } else { label1.Visible = true; label2.Visible = true; label3.Visible = true; label4.Visible = true; label5.Visible = true; label6.Visible = true; label7.Visible = true; label8.Visible = true; label9.Visible = true; label10.Visible = true; } }
for (int i = 0; i <10; i++)
{
var label = tabControl1.TabPages[0].Controls.Find($"label{i + 1}", true).FirstOrDefault() as System.Windows.Forms.Label; // добавляем проверку на наличие элемента и преобразуем результат в Label
if (label != null)
{
label.Text = chosenWords[i];
}
}
Вы можете использовать метод Fisher-Yates для перетасовки массива chosenWords. Затем вы можете создать новый массив, выбирая элементы из перетасованного массива по одному до тех пор, пока все элементы не будут использованы. Например:scss@Добрый робот (ChatGPT)
c# Вот код. Как из массива слов chosenWords вытащить слова по одному в случайном порядке без повторения слов и записать в новый массив.
Код:for (int i = 0; i <10; i++) { var label = tabControl1.TabPages[0].Controls.Find($"label{i + 1}", true).FirstOrDefault() as System.Windows.Forms.Label; // добавляем проверку на наличие элемента и преобразуем результат в Label if (label != null) { label.Text = chosenWords[i]; } }
// Перетасовать массив chosenWords
Random rnd = new Random();
for (int i = chosenWords.Length - 1; i > 0; i--)
{
int j = rnd.Next(i + 1);
var temp = chosenWords[i];
chosenWords[i] = chosenWords[j];
chosenWords[j] = temp;
}
// Создать новый массив, выбирая элементы из перетасованного массива по одному
string[] randomWords = new string[chosenWords.Length];
int index = 0;
foreach (var word in chosenWords)
{
if (index >= randomWords.Length)
{
break;
}
if (!randomWords.Contains(word))
{
randomWords[index] = word;
index++;
}
}
// Перетасовать массив chosenWords
var chosenWords = new List<string> ();
Random rnd = new Random();
for (int i = chosenWords.Length - 1; i > 0; i--)// Ошибка CS1061 "List<string>" не содержит определения "Length", и не удалось найти доступный метод расширения "Length", принимающий тип "List<string>" в качестве первого аргумента (возможно, пропущена директива using или ссылка на сборку).
{
int j = rnd.Next(i + 1);
var temp = chosenWords[i];
chosenWords[i] = chosenWords[j];
chosenWords[j] = temp;
}
Проблема здесь заключается в том, что у списка chosenWords нет свойства Length, как это есть у массивов в C#. Вместо этого, у списков есть свойство Count, которое можно использовать для получения количества элементов в списке.@Добрый робот (ChatGPT)
c# Вот код. Есть ошибка
Как исправить ошибку.Код:// Перетасовать массив chosenWords var chosenWords = new List<string> (); Random rnd = new Random(); for (int i = chosenWords.Length - 1; i > 0; i--)// Ошибка CS1061 "List<string>" не содержит определения "Length", и не удалось найти доступный метод расширения "Length", принимающий тип "List<string>" в качестве первого аргумента (возможно, пропущена директива using или ссылка на сборку). { int j = rnd.Next(i + 1); var temp = chosenWords[i]; chosenWords[i] = chosenWords[j]; chosenWords[j] = temp; }
// Перетасовать массив chosenWords
var chosenWords = new List<string>();
Random rnd = new Random();
for (int i = chosenWords.Count - 1; i > 0; i--)
{
int j = rnd.Next(i + 1);
var temp = chosenWords[i];
chosenWords[i] = chosenWords[j];
chosenWords[j] = temp;
}
Вы можете скрыть остальные страницы, установив свойство Visible на false для каждой страницы, кроме нужной страницы.@Добрый робот (ChatGPT)
c# Имеется TabControl с 10 страницами. Как сделать чтобы было видно только одну страницу.
// скрываем все страницы кроме первой
for (int i = 1; i < tabControl1.TabCount; i++)
{
tabControl1.TabPages[i].Visible = false;
}
// показываем нужную страницу
tabControl1.SelectedTab = tabPage1;
tabPage1.Visible = true;
tabControl1.SelectedIndex = 0; // показываем первую страницу
// скрываем все страницы кроме первой
for (int i = 1; i < tabControl1.TabCount; i++)
{
tabControl1.TabPages[i].Visible = false;
}
// показываем нужную страницу
tabControl1.SelectedTab = tabPage1;
tabPage1.Visible = true;
Чтобы скрыть уголки страниц в контроле TabControl, можно установить свойство Appearance в значение FlatButtons или Buttons в зависимости от того, какой стиль уголков нужен.@Добрый робот (ChatGPT)
c# При таком коде всё равно уголки страниц tabControl1 всё равно видны.
Код:// скрываем все страницы кроме первой for (int i = 1; i < tabControl1.TabCount; i++) { tabControl1.TabPages[i].Visible = false; } // показываем нужную страницу tabControl1.SelectedTab = tabPage1; tabPage1.Visible = true;
Как сделать чтобы уголков страниц tabControl1 тоже не было видно.
tabControl1.Appearance = TabAppearance.FlatButtons;
tabControl1.SizeMode = TabSizeMode.Fixed;
tabControl1.ItemSize = new Size(100, 30); // задаем ширину и высоту вкладок
tabControl1.SizeMode = TabSizeMode.Fixed;
tabControl1.ItemSize = new Size(100, 30); // Ошибка CS0246 Не удалось найти тип или имя пространства имен "Size" (возможно, отсутствует директива using или ссылка на сборку).
Ошибка CS0246 говорит о том, что компилятор не может найти тип или имя пространства имен "Size". В вашем коде необходимо добавить директиву using System.Drawing; для того, чтобы компилятор мог распознать тип "Size".@Добрый робот (ChatGPT)
c# В коде возникает ошибка
Как исправить такую ошибку?Код:tabControl1.SizeMode = TabSizeMode.Fixed; tabControl1.ItemSize = new Size(100, 30); // Ошибка CS0246 Не удалось найти тип или имя пространства имен "Size" (возможно, отсутствует директива using или ссылка на сборку).
using System.Drawing;
tabControl1.SizeMode = TabSizeMode.Fixed;
tabControl1.ItemSize = new Size(100, 30);
Подарок, который вызывает много эмоций, зависит от личности и интересов конкретного мужчины. Однако, ниже приведены несколько идей, которые могут помочь:@Добрый робот (ChatGPT)
что подарить мужчине, чтобы это вызвало много эмоций
Пользователь добавил сообщение :
@Добрый робот (ChatGPT)
на какой закон сослаться, если мне не возвращают деньги за еще не оказанную услугу
Если вам не возвращают деньги за еще не оказанную услугу, вы можете сослаться на законодательство о защите прав потребителей. В большинстве стран существуют законы, которые обеспечивают права потребителей на получение качественной услуги и возмещение убытков в случае нарушения этих прав.@Добрый робот (ChatGPT)
на какой закон сослаться, если мне не возвращают деньги за еще не оказанную услугу