Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/34: Рейтинг темы: голосов - 34, средняя оценка - 4.71
 Аватар для lolCreeper0
3 / 3 / 1
Регистрация: 09.07.2017
Сообщений: 172
.NET 2.x

Как менять картинки в PictureBox и внести папку с фотографиями в ресурсы?

23.07.2018, 13:16. Показов 7080. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Недавно столкнулся с проблемой, что я хотел добавить папку с фото в ресурсы проекта.
Как добавить папку? Просто хочу сделать перелистывание кнопками влево/вправо в PictureBox, а у меня 31 фото в папке.
И причем фотографии отсортированы по месяцам.

Добавлено через 1 минут
Короче говоря, мне надо сделать так, как в программе "Просмотр фотографий Windows"
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.07.2018, 13:16
Ответы с готовыми решениями:

В pictureBox менять картинки при нажатии на кнопку
Здравствуйте подскажите пожалуйста как сделать с помощью кнопки чтобы менялось изображения в pictureBox С#

Как задать плавное перемещение картинки в PictureBox (или перемещение самого PictureBox) из точки А в точку Б по прямой?
Необходимо задать плавное перемещение по прямой линии из "А" в "Б" по нажатию "Button"

Как менять вид курсора при наводе на PictureBox?
Как менять текстуру курсора при наводе на pictureBox?

13
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
23.07.2018, 13:41
Можно и не добавлять. А через picturebox.Load подгружать. Можно через PictureBox1.Image = ImageList1.Images коллекцию создать через ImageList. Можно через ресурсы. На форуме инфы полно.
Зачем вам в ресурсы добавлять ?
0
 Аватар для lolCreeper0
3 / 3 / 1
Регистрация: 09.07.2017
Сообщений: 172
23.07.2018, 14:11  [ТС]
Цитата Сообщение от PoPsa85 Посмотреть сообщение
А через picturebox.Load подгружать.
Можно об этом поподробней?
0
0 / 0 / 0
Регистрация: 18.07.2018
Сообщений: 6
23.07.2018, 14:17
А так делаю

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// Создали пикчу
 PictureBox pb = new PictureBox();
 
//для вывода на форму
pb.Location = new Point(x, y);  
pb.Size = new Size(200, 100);
 
// Создали область для рисования
Bitmap img1;
img1 = new Bitmap(@"D:\img1.bmp", true);
 
// Вставили картинку в пикчу
pb.Image = img1;
// вывели на форму
Controls.Add(pb);
0
 Аватар для PoPsa85
814 / 561 / 240
Регистрация: 01.07.2018
Сообщений: 1,818
23.07.2018, 15:07
lolCreeper0, picturebox.load("c:\\mypicture.jpg") Так например. Вообще. как я понял вам нужно через FolderBrowserDialog выбирать папку, создавать массив файлов и проходить по нему.
0
 Аватар для lolCreeper0
3 / 3 / 1
Регистрация: 09.07.2017
Сообщений: 172
23.07.2018, 18:34  [ТС]
Цитата Сообщение от PoPsa85 Посмотреть сообщение
Вообще. как я понял вам нужно через FolderBrowserDialog выбирать папку, создавать массив файлов и проходить по нему.
Не надо мне никаких диалоговых окон. Мне хочется чтоб все фото в PictureBox1 хранились в одной папке, а папка была указана автоматически. И чтоб кнопками можно было перелистывать изображения в одной папке.
Я передумал насчет заливания 31 фото в ресурсы.
0
 Аватар для ViterAlex
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
23.07.2018, 18:39
Цитата Сообщение от lolCreeper0 Посмотреть сообщение
мне надо сделать так, как в программе "Просмотр фотографий Windows"
Ну значит, твоя программа должна
  1. принимать файл через командную строку.
  2. Брать из пути к файлу каталог и искать в нём изображения.
  3. Формировать некий указатель на эти изображения, чтобы можно было по очереди подгружать их при необходимости.
0
 Аватар для lolCreeper0
3 / 3 / 1
Регистрация: 09.07.2017
Сообщений: 172
23.07.2018, 18:54  [ТС]
Цитата Сообщение от ViterAlex Посмотреть сообщение
Ну значит, твоя программа должна
принимать файл через командную строку.
Брать из пути к файлу каталог и искать в нём изображения.
Формировать некий указатель на эти изображения, чтобы можно было по очереди подгружать их при необходимости.
Можно код? =)
По образцу сделаю.
0
 Аватар для ViterAlex
8951 / 4863 / 1886
Регистрация: 11.02.2013
Сообщений: 10,246
23.07.2018, 19:17
Нельзя, мне лень, потому что неинтересная задача
0
 Аватар для Кузнец кода
169 / 188 / 35
Регистрация: 21.01.2018
Сообщений: 230
23.07.2018, 20:19
Уже помогал с ответом, остался исходник
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 LinkedList<Bitmap> collectionImage = new LinkedList<Bitmap>();
        public Form1()
        {
            InitializeComponent();
            string[] filePaths = Directory.GetFiles(@"C:\Users\Сергей\Pictures", "*.jpg");
            foreach (var file in filePaths)
                collectionImage.AddFirst(new Bitmap(file));
 
            pictureBox1.Image = collectionImage.First();
        }
        LinkedListNode<Bitmap> node;
        private void button1_Click(object sender, EventArgs e)
        {
            for (node = collectionImage.Last; node != null; node = node.Previous)
                pictureBox1.Image = node.Value;
        }
 
        private void button2_Click(object sender, EventArgs e)
        {
            for (node = collectionImage.First; node != null; node = node.Next)
                pictureBox1.Image = node.Value;
        }
0
 Аватар для lolCreeper0
3 / 3 / 1
Регистрация: 09.07.2017
Сообщений: 172
23.07.2018, 20:31  [ТС]
Цитата Сообщение от Кузнец кода Посмотреть сообщение
Уже помогал с ответом, остался исходник
У меня застревает на второй картинке.
А что делать, если у меня 3 папки с изображениями? Тот же самый код, но немного изменив?
0
 Аватар для Кузнец кода
169 / 188 / 35
Регистрация: 21.01.2018
Сообщений: 230
23.07.2018, 20:35
Вы тогда должны добавить эти папки или указать директорию верхнего уровня (там где лежат ваши 3 папки с картинками) и проверить на наличие файлов jpg с добавлением их в массив.
0
 Аватар для lolCreeper0
3 / 3 / 1
Регистрация: 09.07.2017
Сообщений: 172
23.07.2018, 23:59  [ТС]
Цитата Сообщение от Кузнец кода Посмотреть сообщение
Вы тогда должны добавить эти папки или указать директорию верхнего уровня (там где лежат ваши 3 папки с картинками) и проверить на наличие файлов jpg с добавлением их в массив.
C#
1
            pictureBox1.Image = collectionImage.First();
Ошибка CS1955 Невызываемый член "LinkedList<Bitmap>.First" не может использоваться как метод.
Что я не подключил, неправильно сделал?
Я этот код вставил в:
C#
1
2
3
4
5
6
7
8
        public Form1()
        {
            InitializeComponent();
            string[] filePaths = Directory.GetFiles(@"WORKFOLDER\2013", "*.jpg");
            foreach (var file in filePaths)
                collectionImage.AddFirst(new Bitmap(file));
            pictureBox1.Image = collectionImage.First();
        }
Добавлено через 5 минут
Я сначала убрал эту строку, но у меня застревало на второй картинке, и я думаю, что не вписал этот код
pictureBox1.Image = collectionImage.First();
Но у меня выходит ошибка выше.

Добавлено через 3 часа 9 минут
На данный момент ошибки, не исправленные:
Цитата Сообщение от lolCreeper0 Посмотреть сообщение
У меня застревает на второй картинке.
и
Цитата Сообщение от lolCreeper0 Посмотреть сообщение
pictureBox1.Image = collectionImage.First();
Ошибка CS1955 Невызываемый член "LinkedList<Bitmap>.First" не может использоваться как метод.
Что я не подключил, неправильно сделал?
Я этот код вставил в:
C#
1
2
3
4
5
6
7
8
public Form1()
{
InitializeComponent();
string[] filePaths = Directory.GetFiles(@"WORKFOLDER\2013", "*.jpg");
foreach (var file in filePaths)
collectionImage.AddFirst(new Bitmap(file));
pictureBox1.Image = collectionImage.First();
}
Я сначала убрал эту строку, но у меня застревало на второй картинке, и я думаю, что не вписал этот код
pictureBox1.Image = collectionImage.First();
Но у меня выходит ошибка выше.
0
 Аватар для lolCreeper0
3 / 3 / 1
Регистрация: 09.07.2017
Сообщений: 172
24.07.2018, 18:38  [ТС]
Цитата Сообщение от Кузнец кода Посмотреть сообщение
Уже помогал с ответом, остался исходник
Попробовал на другом чистом проекте, подставил как надо - Работает перелистывание.
Но почему у меня при нажатии кнопок отображается либо первая, либо последняя фотография?
Мне нужно все 31 картинку просматривать.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
24.07.2018, 18:38
Помогаю со студенческими работами здесь

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

Как получить все ресурсы(картинки) из папки ресурсов
Ну вопрос, заключается в том, что у меня есть несколько папок с картинками, такие как grass, wood. Мне надо получить в List все картинки...

HTML файлы (таблицы стилей и картинки) как Ресурсы
У меня есть проект (браузер) отображает HTML файлы что находятся в папке с программой. У меня вопрос как можно запаковать все это чудо...

Как менять картинки на кнопке при нажатии?
как менять картинке на кнопке? (когда нажата одна картинка а когда отпущена другая)

Игра Змейка, как менять направление картинки
Создал простую змейку, проблема в том что при изменении направления нужно чтобы тело змейки и ее голова меняли ориентацию. Я так понимаю...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru