Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Temiks
6 / 6 / 5
Регистрация: 18.11.2014
Сообщений: 64
1

Расположить элементы управления плиткой

18.11.2014, 18:42. Просмотров 864. Ответов 4
Метки нет (Все метки)

Здравствуйте. Подскажите, пожалуйста, цикл с помощью которого можно вывести блоки вот таким вот образом на VB.net
Расположить элементы управления плиткой

Блоки создаются динамически. Код:
vb.net
1
2
3
4
5
6
7
8
9
10
11
For i = 0 To DataGridView1.Rows.Count - 2
            Dim Pb(i) As PictureBox
            Pb(i) = New PictureBox
            Pb(i).Name = "Image" + CStr(i)
            Pb(i).Size() = New Size(254, 142)
            Pb(i).Visible = True
            Pb(i).SizeMode = PictureBoxSizeMode.StretchImage
            Pb(i).Image = Image.FromFile(Application.StartupPath & DataGridView1.Rows(i).Cells(7).Value.ToString())
            Panel1.Controls.Add(Pb(i))
            Panel1.Visible = True
        Next
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2014, 18:42
Ответы с готовыми решениями:

Как правильно удалить элемент управления формы и как правильно после этого переименовать элементы управления?
Еще раз доброе утро! В ходе работы возник вопрос. У меня на форме три Label:...

Элементы управления перестали добавляться на форму
Приветствую Вас, всех! После опробование программки решил сделать изменения...

Где найти интересные пользовательские элементы управления
Уважаемые коллеги, простите за столь странный вопрос, но, кто может подсказать...

Где в тулбоксе находятся стандартные элементы управления?
Откуда брать готовые кнопки, контейнеры, листбоксы и др.? Не судите строго,...

Вывести матрицу на форму, не используя элементы управления
Здравствуйте! Подскажите пожалуйста, можно ли в VB 2008 вывести матрицу на...

4
Visualist
51 / 51 / 25
Регистрация: 01.02.2014
Сообщений: 201
18.11.2014, 21:15 2
Лучший ответ Сообщение было отмечено Temiks как решение

Решение

vb.net
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        Dim X = 10 'начальная точка по Х
        Dim Y = 20 'начальная точка пo Y 
 
        For i = 1 To 16 'начинать цикл не с 0, а с 1
            Dim Pb(i) As PictureBox
            Pb(i) = New PictureBox
            Pb(i).Name = "Image" + CStr(i)
            Pb(i).Size() = New Size(254, 142)
            Pb(i).Location = New Point(X, Y)
            Pb(i).BackColor = Color.Red
            Me.Controls.Add(Pb(i))
 
            If (i Mod 3) = 0 Then 'каждый 4й - вывод с новой строки
                X = 10
                Y += 145 'твой размер по Y + 3 (для промежутка)
            Else
                X += 257 'твой размер по X + 3
            End If
        Next
1
Temiks
6 / 6 / 5
Регистрация: 18.11.2014
Сообщений: 64
18.11.2014, 21:31  [ТС] 3
Спасибо за помощь, только я не могу начинать цикл с 1 так как выборка идет с бд, а там начальный элемент 0, а не 1
0
Visualist
51 / 51 / 25
Регистрация: 01.02.2014
Сообщений: 201
18.11.2014, 21:44 4
Ты об этом?
vb.net
1
 Pb(i).Image = Image.FromFile(Application.StartupPath & DataGridView1.Rows(i).Cells(7).Value.ToString())
Сделай так (i-1):
vb.net
1
 Pb(i).Image = Image.FromFile(Application.StartupPath & DataGridView1.Rows(i-1).Cells(7).Value.ToString())
Или вот, в моем коде, строка 13 - замени на
vb.net
1
If ((i + 1) Mod 3) = 0 Then 'каждый 4й - вывод с новой строки
1
Temiks
6 / 6 / 5
Регистрация: 18.11.2014
Сообщений: 64
18.11.2014, 21:46  [ТС] 5
Visualist, да, об этом, спасибо большое!
0
18.11.2014, 21:46
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.11.2014, 21:46

Убегают элементы управления (кнопки, текстовые поля для ввода)
Добрый день! Сделал свойство BackGroundImageLayout = zoom в TabControl....

Преобразовать массив: сначала расположить все элементы, модуль которых не превышает 4, а потом все остальные
В одномерном массиве, состоящем из 15 вещественных элементов (значения...

Как сделать элементы плиткой?
Элементы сортируются только когда они по горизонталь находятся, а когда в...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru