Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.94/16: Рейтинг темы: голосов - 16, средняя оценка - 4.94
1 / 1 / 0
Регистрация: 12.02.2020
Сообщений: 73

Сравнение элементов с текстом в поле

04.04.2020, 15:35. Показов 3756. Ответов 36

Студворк — интернет-сервис помощи студентам
Проблема сравнения текста в кнопке с текстом в текстовом документе,
VB.NET
1
2
3
4
5
6
   answers() As String = IO.File.ReadAllLines("C:\Users\ravil\Desktop\Курсовая работа\answers.txt ", System.Text.Encoding.UTF8)
Dim Proverka2 As String
        For i = 1 To 16
            Proverka2 = answers(i)
            If Proverka2 = Button3.Text Then
                Button3.BackColor = Color.Green
Условие не выполняется
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
04.04.2020, 15:35
Ответы с готовыми решениями:

Сравнение текста из файла и сравнение с текстом в программе char - Dev C++
Доброго времени суток! Имеется код программы: ifstream test("primer.txt"); char awm = "kod"; char buff; test >> buff; if...

Редактируемое поле с текстом
Подскажите пожалуйста, мне нужен скрипт, для создания динамически редактируемого текстового поля, говоря по другому обычного <input>....

Работа с текстом в поле Memo
Помогите плиз с заданием. Нужно написать код к программе, которая позволяет найти в тексте слова cat и dog, и строчки в которых есть эти...

36
3085 / 3239 / 556
Регистрация: 17.02.2019
Сообщений: 5,153
04.04.2020, 16:29
Rav26, а где next
VB.NET
1
2
3
4
5
For i = 1 To 16
'ваш код
Next
' и наверно так
If Proverka2 = Button3.Text Then Button3.BackColor = Color.Green
ну а так наверное правильней
VB.NET
1
2
3
For i = 1 To answers.Length - 1
           ' ваш код
        Next
Добавлено через 23 минуты
Rav26, пробуй
VB.NET
1
2
3
4
5
6
 Dim answers() As String = IO.File.ReadAllLines("C:\Users\ravil\Desktop\Курсовая работа\answers.txt ", System.Text.Encoding.UTF8)
        Dim Proverka2 As String
        For i = 1 To answers.Length - 1
            Proverka2 = answers(i)
            If Proverka2 = Button3.Text Then Button3.BackColor = Color.Green
        Next
но если в answers.txt там одна строка то не выйдет
0
Лень — мое второе и
 Аватар для Orlangur
3226 / 2414 / 687
Регистрация: 28.11.2014
Сообщений: 3,600
Записей в блоге: 3
04.04.2020, 16:41
Rav26, можно просто проверить, есть ли это значение в массиве
VB.NET
1
2
 Dim answers() As String = IO.File.ReadAllLines("C:\Users\ravil\Desktop\Курсовая работа\answers.txt", System.Text.Encoding.UTF8)
        If answers.Contains(Button3.Text) Then Button3.BackColor = Color.Green
Вопрос в другом, какой текст у button3, что находится в answers.txt и почему цикл от 1 до 16?
0
3085 / 3239 / 556
Регистрация: 17.02.2019
Сообщений: 5,153
04.04.2020, 17:13
наверно так точнее будет
VB.NET
1
2
3
4
5
6
Dim answers() As String = IO.File.ReadAllLines("C:\Users\ravil\Desktop\Курсовая работа\answers.txt ", System.Text.Encoding.UTF8)
        Dim Proverka2 As String
        For i = 0 To answers.Length - 1
            Proverka2 = answers(i)
            If Proverka2 = Button3.Text Then Button3.BackColor = Color.Green
        Next
0
1 / 1 / 0
Регистрация: 12.02.2020
Сообщений: 73
04.04.2020, 21:36  [ТС]
16 потому что, у меня правильных ответов 15. Создаю игру кто хочет стать миллионером, 15 вопросов и 15 ответов на них. В одном текстовом документе вопросы и варианты ответов, а в другом правильные ответы.
0
3085 / 3239 / 556
Регистрация: 17.02.2019
Сообщений: 5,153
04.04.2020, 21:41
так какой подошел пример?
0
1 / 1 / 0
Регистрация: 12.02.2020
Сообщений: 73
04.04.2020, 22:03  [ТС]
условие всё равно не выполняется

Добавлено через 1 минуту
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
        If answers.Contains(Button3.Text) Then
            Button3.BackColor = Color.Green
            Button1.Enabled = False
            Button2.Enabled = False
            Button4.Enabled = False
            Button8.Visible = True
            Button8.Text = "Вперёд"
            score = Val(Label1.Text) + 1
        End If
        If score = Val(Label1.Text) Then
            Button3.BackColor = Color.Red
            Button1.Enabled = False
            Button2.Enabled = False
            Button4.Enabled = False
            Button8.Visible = True
            Button8.Text = "Итоги"
        End If
закрашивается в зеленый даже если условие не выполняется
0
3085 / 3239 / 556
Регистрация: 17.02.2019
Сообщений: 5,153
04.04.2020, 22:07
текстовый файл записан по строчно или одной строкой?
попробуй вместо UTF8 поставить Default
0
1 / 1 / 0
Регистрация: 12.02.2020
Сообщений: 73
04.04.2020, 22:09  [ТС]
записан построчно, default ставил, не сработало
0
3085 / 3239 / 556
Регистрация: 17.02.2019
Сообщений: 5,153
04.04.2020, 23:33
Создай переменную типа byte
VB.NET
1
Dim KOH As Byte =0
потом проверку
VB.NET
1
If answers(KOH).Contains(Button3.Text) Then
при каждом вопросе прибавляй к ней +1. А то идет проверка всего массива. И ответ есть значит красит в Зеленый
0
1 / 1 / 0
Регистрация: 12.02.2020
Сообщений: 73
06.04.2020, 20:04  [ТС]
Спасибо за отзыв к проблеме, попробовал таким образом как вы описали, но увы не сработало. Для интереса сравнил с прямым текстом с правильным ответом : answers(1)=Button3.text, до условия выставил MSgbox(answers(0)), вывод был корректный , но условие не выполнилось((
0
3085 / 3239 / 556
Регистрация: 17.02.2019
Сообщений: 5,153
06.04.2020, 20:42
так если Msgbox(answers(0)) верно
так в answers(1)=Button3.text почему цифра 1 тоже ставь 0
в Msgbox выводите значение под номером 0 , а проверяете под номером 1
0
Лень — мое второе и
 Аватар для Orlangur
3226 / 2414 / 687
Регистрация: 28.11.2014
Сообщений: 3,600
Записей в блоге: 3
06.04.2020, 20:42
Rav26, в ответах текст в том же регистре, что и на кнопке?
0
1 / 1 / 0
Регистрация: 12.02.2020
Сообщений: 73
07.04.2020, 09:30  [ТС]
да, проверял я answers(0), не дурак. Ответ на тексте и текст на кнопке совпадает, скопировал всё

Добавлено через 24 минуты
MsgBox(answers(0))
If answers(0) = Button3.Text Then
0
265 / 216 / 54
Регистрация: 01.08.2016
Сообщений: 832
07.04.2020, 09:53
Rav26, Странно что у тебя не выполняется код. Если взять ответ в посте 4 то все нормально работает
0
2282 / 1598 / 400
Регистрация: 26.06.2017
Сообщений: 4,725
Записей в блоге: 1
07.04.2020, 10:50
Возможно сравнение не срабатывает потому, что в answers(i) содержаться спецсимволы, например vbCrLf.

Добавлено через 5 минут
Хотя по докам завершающих символов в результирующих строках IO.File.ReadAllLines быть не должно.
0
Лень — мое второе и
 Аватар для Orlangur
3226 / 2414 / 687
Регистрация: 28.11.2014
Сообщений: 3,600
Записей в блоге: 3
07.04.2020, 14:30
Rav26, пришлите файл с ответами
0
1 / 1 / 0
Регистрация: 12.02.2020
Сообщений: 73
07.04.2020, 14:59  [ТС]
Вот
Вложения
Тип файла: txt 1.txt (531 байт, 10 просмотров)
Тип файла: txt answers.txt (142 байт, 4 просмотров)
0
Лень — мое второе и
 Аватар для Orlangur
3226 / 2414 / 687
Регистрация: 28.11.2014
Сообщений: 3,600
Записей в блоге: 3
07.04.2020, 15:14
Rav26, ну, с тем кодом, что я кидал все отрабатывает нормально, видимо косяк где-то в другом месте, если нет ничего секретного в проекте, то кидай его сюда, так будет проще разобраться
0
1 / 1 / 0
Регистрация: 12.02.2020
Сообщений: 73
08.04.2020, 10:10  [ТС]
Public Class Form2
Public podscazka1, podscazka2, podscazka3, score, chislo As Integer,
f1() As String = IO.File.ReadAllLines("C:\Users\ravil\Des ktop\Курсовая работа\1.txt ", System.Text.Encoding.Default),
Hard() As String = IO.File.ReadAllLines("C:\Users\ravil\Des ktop\Курсовая работа\Level.txt ", System.Text.Encoding.Default),
answers() As String = IO.File.ReadAllLines("C:\Users\ravil\Des ktop\Курсовая работа\answers.txt ", System.Text.Encoding.UTF8)
Private Sub form1_load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Proverka1 As String
Dim i As Integer
Me.Text = "Первый вопрос"
Label6.Text = "Играет:" + Form1.name
Label1.Text = Hard(0)
For i = 0 To 20
Proverka1 = f1(i)
If Proverka1.Contains(Label1.Text) Then
TextBox1.Text = f1(i)
Button1.Text = f1(i + 1)
Button2.Text = f1(i + 2)
Button3.Text = f1(i + 3)
Button4.Text = f1(i + 4)
Exit For
End If
Next i
score = Val(Label1.Text)
Label1.Text = Val(Label1.Text) + 1
IO.File.WriteAllText("C:\Users\ravil\Des ktop\Курсовая работа\Level.txt", "")
IO.File.AppendAllLines("C:\Users\ravil\D esktop\Курсовая работа\Level.txt", {Label1.Text}, System.Text.Encoding.Default)
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim Proverka2 As String
For i = 1 To 16
Proverka2 = answers(i)
If Proverka2 = Button1.Text Then
Button1.BackColor = Color.Green
Button2.Enabled = False
Button3.Enabled = False
Button4.Enabled = False
Button8.Visible = True
Button8.Text = "Вперёд"
Exit For
Else
Button1.BackColor = Color.Red
Button2.Enabled = False
Button3.Enabled = False
Button4.Enabled = False
Button8.Visible = True
Button8.Text = "Итоги"
Exit For
End If
Next i
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
Dim Proverka2 As String
For i = 1 To 16
Proverka2 = answers(i)
If answers(i) = (Button2.Text) Then
Button2.BackColor = Color.Green
Button1.Enabled = False
Button3.Enabled = False
Button4.Enabled = False
Button8.Visible = True
Button8.Text = "Вперёд"
Exit For
Else
Button2.BackColor = Color.Red
Button1.Enabled = False
Button3.Enabled = False
Button4.Enabled = False
Button8.Visible = True
Button8.Text = "Итоги"
Exit For
End If
Next i
End Sub
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Dim Proverka2 As String
For i = 0 To 16
Proverka2 = answers(i)
If Proverka2 = Button3.Text Then
Button3.BackColor = Color.Green
Button1.Enabled = False
Button2.Enabled = False
Button4.Enabled = False
Button8.Visible = True
Button8.Text = "Вперёд"
score = Val(Label1.Text) + 1
Exit For
End If
Next i
If score = Val(Label1.Text) Then
Button3.BackColor = Color.Red
Button1.Enabled = False
Button2.Enabled = False
Button4.Enabled = False
Button8.Visible = True
Button8.Text = "Итоги"
End If
End Sub
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
Dim Proverka2 As String
For i = 1 To 16
Proverka2 = answers(i)
If Proverka2 = Button4.Text Then
Button4.BackColor = Color.Green
Button2.Enabled = False
Button3.Enabled = False
Button1.Enabled = False
Button8.Visible = True
Button8.Text = "Вперёд"
score = 2
Exit For
Else
Button4.BackColor = Color.Red
Button2.Enabled = False
Button3.Enabled = False
Button1.Enabled = False
Button8.Visible = True
Button8.Text = "Итоги"
score = 1
Exit For
End If
Next i
End Sub
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
For i = 1 To 16
If Button1.Text = answers(i) Then
Button2.Dispose()
Button4.Dispose()
Exit For
End If
If Button2.Text = answers(i) Then
Button3.Dispose()
Button4.Dispose()
Exit For
End If
If Button3.Text = answers(i) Then
Button4.Dispose()
Button1.Dispose()
Exit For
End If
If Button4.Text = answers(i) Then
Button1.Dispose()
Button2.Dispose()
Exit For
End If
Next i
podscazka1 = 1
Button5.Dispose()
End Sub
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
Button3.BackColor = Color.Blue
podscazka2 = 1
Button6.Dispose()
End Sub
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
chislo = Int(4 * Rnd()) + 1
If chislo = 1 Then Button1.BackColor = Color.Gold
If chislo = 2 Then Button2.BackColor = Color.Gold
If chislo = 3 Then Button3.BackColor = Color.Gold
If chislo = 4 Then Button4.BackColor = Color.Gold
podscazka3 = 1
Button7.Enabled = False
Button7.Dispose()
End Sub
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
Dim frm = New Form2
frm.Show()
Me.Close()
End Sub
End Class
код я не оптимизировал, ещё поэтому такая каша
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
08.04.2020, 10:10
Помогаю со студенческими работами здесь

Rt-поле с текстом и аттачами в веб
Привет! Кто сталкивался - как правильно организовать работу с ричтекст-полем, содержащим текст и аттачи внутри в веб? С документом...

Работа с текстом в многострочном поле ввода
Создайте приложение для работы с текстом в многострочном поле ввода. В зависимости, от того, какая кнопка нажата, соответственно изменяется...

Вставка символа в текстовое поле с уже имеющимся текстом
Форумчане! Я "собрал" клавиатуру. Текст который печатается в TextBox. Можно сохранить его, и взять из файла. Но не смог сделать...

Скрыть/показать поле с текстом если оно заполнено
Привет народ! Как скрыть/показать при обновлении текстовое поле если оно заполнено/не заполнено? Спасибо!

Генератор картинки с текстом, который нужно ввести в поле
Как сделать такую же штуку, как тут? Фон там же, шрифт Minecraft.ttf, выбор картинки можно взять через исходный HTML.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru