Вот... Добавь на форму (Form1) ListView1 и Button1 и Button2 на любое место (в загрузке формы прописаны все начальные настройки)... это полный код, ничего добавлять не надо:
Public Class Form1
'объявляем генератор случайных чисел
Private _rnd As New Random
Private Sub LoadList()
'очищаем ListView1 перед заполнением
ListView1.Items.Clear()
'делаем кнопку недоступной т.к. ни один элемент не выбран
Button1.Enabled = False
'заполняем ListView1 в цикле n-ным количеством записей
For Int As Integer = 1 To _rnd.Next(12, 20) Step 1
'добавляем запись с названием клуба,
'номер клуба берем из текущего значения счетчика цикла
ListView1.Items.Add("Клуб №" & Int) 'данные вписываются в первую колонку
'добавляем к созданной записи, данные о количестве болельщиков
ListView1.Items(Int - 1).SubItems.Add(_rnd.Next(20, 50)) 'данные вписываются во вторую колонку
Next Int
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'устанавличваем стандартные настройки формы и всех их элементов:
'настройки формы (Form1):
Me.Text = "Список клубов"
Me.Size = New Size(300, 329) 'размер
Me.FormBorderStyle = Windows.Forms.FormBorderStyle.FixedSingle 'стиль рамки (фиксированный)
'скрытие кнопок минимизирования и максимизирования
Me.MaximizeBox = False
Me.MinimizeBox = False
'скрытие иконки формы
Me.ShowIcon = False
'установка цвета формы
Me.BackColor = Color.White
'настройки листа (ListView1):
ListView1.Location = New Point(12, 12) 'позиция
ListView1.Size = New Size(268, 213) 'размер
ListView1.GridLines = True 'показ разделительных линий
ListView1.FullRowSelect = True 'выделение всей строки
'добавляем колонки (Columns)
ListView1.Columns.Add("Наименование клуба", 130)
ListView1.Columns.Add("Кол. болельщиков", 115)
'заполняем лист
LoadList()
'настройки кнопки (Button1):
Button1.Location = New Point(12, 231) 'позиция
Button1.Size = New Size(268, 23) 'размер
Button1.Text = "Показать полную информацию о клубе"
'настройки кнопки (Button2):
Button2.Location = New Point(12, 260) 'позиция
Button2.Size = New Size(268, 23) 'размер
Button2.Text = "Найти клуб с мин. числом болельщиков"
End Sub
Private Sub ListView1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView1.SelectedIndexChanged
'проверяем выбрана ли запись или нет
If ListView1.SelectedItems.Count > 0 Then
'если количество выбранных записей больше 0, то
'делаем кнопку Button1 доступной
Button1.Enabled = True
Else
'иначе делаем кнопку Button1 недоступной
Button1.Enabled = False
End If
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'создаем в цикле столько форм, сколько выделено элементов
For Each itm As ListViewItem In ListView1.SelectedItems
'показываем форму с информацией о клубе
LoockFormInfClub(itm.Text, itm.SubItems(1).Text)
Next
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
'объявляем 2 локальные переменные
Dim _min_index As Integer = 0 'индекс записи с мин. числом болельщиков (начнем с 0)
Dim _min_value As Integer = ListView1.Items(0).SubItems(1).Text 'значение болельщиков этой записи
'перебираем все записи и находим запись с минимальным числом болельщиков
For Each itm As ListViewItem In ListView1.Items
If itm.SubItems(1).Text < _min_value Then
'если в выбранной записи меньше болельщиков чем в переменной,
'то в переменные записываем данные этой записи
_min_index = itm.Index
_min_value = itm.SubItems(1).Text
End If
Next
'показываем форму с информацией о клубе, индекс которого равен записи с мин. значением кол. болельщиков
LoockFormInfClub(ListView1.Items(_min_index).Text, ListView1.Items(_min_index).SubItems(1).Text)
End Sub
Private Sub LoockFormInfClub(ByVal _Club_Name As String, ByVal _Club_Col_Bol As Integer)
'создание формы
Dim Form As New Form
Form.Text = "Подробная информация"
Form.Size = New Size(300, 300) 'размер
Form.FormBorderStyle = Windows.Forms.FormBorderStyle.FixedSingle 'стиль рамки (фиксированный)
'скрытие кнопок минимизирования и максимизирования
Form.MaximizeBox = False
Form.MinimizeBox = False
'скрытие иконки формы
Form.ShowIcon = False
'генерируем цвет формы
Select Case _rnd.Next(1, 10)
Case 1
Form.BackColor = Color.Honeydew
Case 2
Form.BackColor = Color.DarkSalmon
Case 3
Form.BackColor = Color.Khaki
Case 4
Form.BackColor = Color.LightGreen
Case 5
Form.BackColor = Color.Aquamarine
Case 6
Form.BackColor = Color.LightSteelBlue
Case 7
Form.BackColor = Color.Thistle
Case 1
Form.BackColor = Color.MediumSpringGreen
Case 1
Form.BackColor = Color.Yellow
Case 1
Form.BackColor = Color.MistyRose
End Select
'создание элементов формы
Dim Label1 As New Label 'надпись
Label1.Location = New System.Drawing.Point(12, 9) 'позиция
Label1.Name = "Label1" 'имя
Label1.Size = New System.Drawing.Size(118, 13) 'размер
Label1.Text = "Наименование клуба:"
Dim Label2 As New Label 'надпись
Label2.Location = New System.Drawing.Point(12, 36) 'позиция
Label2.Name = "Label2" 'имя
Label2.Size = New System.Drawing.Size(145, 13) 'размер
Label2.Text = "Список всех болельщиков:"
Dim Label3 As New Label 'надпись
Label3.Location = New System.Drawing.Point(12, 23) 'позиция
Label3.Name = "Label3" 'имя
Label3.Size = New System.Drawing.Size(141, 13) 'размер
Label3.Text = "Количество болельщиков:"
Dim lbl_Name_Cluba As New Label 'надпись
lbl_Name_Cluba.Location = New System.Drawing.Point(163, 9) 'позиция
lbl_Name_Cluba.Name = "lbl_Name_Cluba" 'имя
lbl_Name_Cluba.Size = New System.Drawing.Size(118, 15) 'размер
lbl_Name_Cluba.Text = _Club_Name
Dim lbl_Col_Bol As New Label 'надпись
lbl_Col_Bol.Location = New Point(163, 23) 'позиция
lbl_Col_Bol.Name = "lbl_Col_Bol" 'имя
lbl_Col_Bol.Size = New Size(118, 13) 'размер
lbl_Col_Bol.Text = _Club_Col_Bol
'вписываем количество болельщиков и
'разделение их на группы, используя
'структуру Select... Case...
Select Case _Club_Col_Bol
Case 20 To 30
lbl_Col_Bol.Text &= " (мало)"
Case 31 To 40
lbl_Col_Bol.Text &= " (нормально)"
Case 41 To 50
lbl_Col_Bol.Text &= " (много)"
End Select
Dim txt_List_Bol As New TextBox 'текстовое поле
txt_List_Bol.Location = New Point(12, 52) 'позиция
txt_List_Bol.Multiline = True 'многострочность
txt_List_Bol.ScrollBars = ScrollBars.Vertical 'установка вертикального ползунка
txt_List_Bol.Name = "txt_List_Bol" 'имя
txt_List_Bol.ReadOnly = True 'запрет редактирования
txt_List_Bol.Size = New Size(268, 202) 'размер
'заполняем поле в цикле, количество берем из ListView1
For Int As Integer = 1 To _Club_Col_Bol
'добавляем строку и переходим на следующую
'номер болельщика берем из текущего значения счетчика цикла
txt_List_Bol.Text &= "Болельщик №" & Int & vbCrLf
Next
'добавление элементов на форму
Form.Controls.Add(Label1)
Form.Controls.Add(Label2)
Form.Controls.Add(Label3)
Form.Controls.Add(lbl_Name_Cluba)
Form.Controls.Add(lbl_Col_Bol)
Form.Controls.Add(txt_List_Bol)
'показ формы в режиме диалога
Form.ShowDialog()
End Sub
End Class
Ох как круто!!!
СпасибооооО!
Я наверно покажусь вам совсем наглой
Помогите пожалуйста моей подружке одногруппнице Аленке! у нее тоже запара. Но вроде программка полегче:
Создать 3 списка ListBox и 2 ComboBox. В первый ввести имена, во второй – отчества, в третий – фамилии. После старта, после маркировки нескольких элементов в каждом из 3х списков, должен выводиться результат в ListBox4 построчно по схеме "Фамилия_Имя_Отчество". В списки ComboBox ввести номера групп и названия специальностей. Установить зависимость между этими 2мя списками, т.е., например, группам, у которых последней стоит цифра "3", специальность "Менеджмент" (с помощью оператора Like). После маркировки элементов в этих списках и щелчка на кнопке 2, результат должен выводиться в элемент управления Label1 на форме2. Осуществить возможность выхода из программы.
Фух, сдала на 4!!!
Можно было бы и на 5, если б разделила группы болельщиков в 3 листбокса
Ну для моих знаний по этому предмету 4 наверно даже много ))
Осталось сдать экзамен еще......
Возник вопрос:
Нужно создать анимацию, используя 4 любые картинки, чтоб они менялись и двигались.
вот этот код
If i Then
Pic3.Image = Pic1.Image
Pic3.SetBounds(Pic3.Left + 15, Pic3.Top - 15, 0, 0, BoundsSpecified.X Or BoundsSpecified.Y)
i = Not i
Else
Pic3.Image = Pic2.Image
Pic3.SetBounds(Pic3.Left + 15, Pic3.Top - 15, 0, 0, BoundsSpecified.X Or BoundsSpecified.Y)
i = Not i
не подходит, т.к. он только на 2 картинки.
Ну и собственно вопрос, какие операторы заменят if, чтобы можно было создать не 2 условия, а 4??
Надеюсь понятно написала
Всем приветик. Случайно вот наткнулась на ваш форум. У меня в институте тоже запара по програмированию. Ничего в этом не понимаю. Помогите ПОЖАЛУСТАААА решить и мне задачку!
Вот задание - "Создать на форме элементы управления ListBox (4 штуки), поле для редактирования, комбинированное с ними, две кнопки и метку. Первая кнопка должна добавлять выделенные элементы из двух первых списков во вторые два соответственно, вторая - выделенные строки из поля для редактирования в метку. Создать вторую форму, добавить на нее элемент управления, позволяющий вставить рисунок. Сделать возможным переход между этими двумя формами."
А ты думал? Мир не без добрых людей! Жаль только доброты на всех не хватает
Астероида глянь, мож пригодится
Select Case i
Case vbNull
Pic5.Image = Pic1.Image
Case 2
Pic5.Image = Pic2.Image
Case 3
Pic5.Image = Pic3.Image
Case 3
Pic5.Image = Pic4.Image
End Select
i = i + vbNull ‘vbNull = 1
If I > 4 then i= vbNull
Pic5.SetBounds(Pic5.Left + 15, Pic5.Top - 15, 0, 0, BoundsSpecified.X Or BoundsSpecified.Y)