1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 39
1

Поместить изображение в pictureBox1

17.01.2019, 11:46. Показов 3616. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет. Вопрос следующий: Как поместить изображение в pictureBox1 (ВНИМАНИЕ) открыв изображение с рабочего стола или из какой-либо папки. То есть сделать мою программу, программой по умолчанию, которая открывает и сама помещает изображение в pictureBox1.

Допустим я скачал фотографию из интернета, нажал на неё два раза и она открылась в моей программе и поместилась в pictureBox1. Как это сделать?
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.01.2019, 11:46
Ответы с готовыми решениями:

Необходимо создать таймер, который раз в секунду менять изображение в pictureBox1
Здравствуйте! Необходимо создать таймер, который раз в секунду менять изображение в PictureBox1. И...

При нажатии мышки, не отпуская, переносить картинки, которые находятся в PictureBox1 по PictureBox1
Здравствуйте,есть проблема. На форме присутствует pictureBox1,а в свою очередь в pictureBox1...

Поместить изображение шахматной доски в программу и разбить на ячейки (координаты)
У меня есть доска в виде картинки. Её надо поместить в Windows Form и разбить на ячейки...

Изменение изображение в PictureBox1
Есть такой код Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As...

11
Администратор
Эксперт .NET
16535 / 12985 / 5108
Регистрация: 17.03.2014
Сообщений: 26,466
Записей в блоге: 1
17.01.2019, 15:05 2
Лучший ответ Сообщение было отмечено Jdjeidkt643432 как решение

Решение

Jdjeidkt643432, помести в событие Load формы следующий код
C#
1
2
3
4
5
6
7
8
9
10
11
12
string[] args = Environment.GetCommandLineArgs();
if (args.Length > 1)
{
    try
    {
        using (var fstream = File.OpenRead(args[1]))
        {
            pictureBox1.Image = Image.FromStream(fstream);
        }
    }
    catch { }
}
Откомпилируй приложение и открой изображение через свою программу с помощью контекстного меню Open with (Открыть с помощью). Приложение должно показать изображение.
2
1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 39
17.01.2019, 17:30  [ТС] 3
Спасибо! Всё работает.

Добавлено через 1 минуту
Как узнать путь к этому изображению? То есть нужно поместить путь к этому изображению в переменную Path типа string.
0
Администратор
Эксперт .NET
16535 / 12985 / 5108
Регистрация: 17.03.2014
Сообщений: 26,466
Записей в блоге: 1
17.01.2019, 17:34 4
Лучший ответ Сообщение было отмечено Jdjeidkt643432 как решение

Решение

Цитата Сообщение от Jdjeidkt643432 Посмотреть сообщение
Как узнать путь к этому изображению?
В чем сложность? Неужели не видно что путь хранится в массиве args?
C#
1
string Path = args[1];
1
1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 39
17.01.2019, 17:43  [ТС] 5
Благодарю! Да что-то массив сбил с толку.
0
1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 39
18.01.2019, 09:29  [ТС] 6
Теперь мне нужно из этого пути узнать только каталог, в котором находится это изображение. То есть нужно в переменную Folder типа string поместить путь до каталога, в котором находится изображение. Как это сделать? Пробовал args[1], но он только к самому файлу, а каталог как оттуда вычислить, ума не приложу.
0
539 / 348 / 117
Регистрация: 17.08.2014
Сообщений: 1,312
18.01.2019, 09:32 7
Лучший ответ Сообщение было отмечено Jdjeidkt643432 как решение

Решение

Jdjeidkt643432, Для каталогов есть класс Directory. Так же есть классы Fileinfo которые так же могут возвращать директорию. Находятся классы в System.IO;
1
1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 39
18.01.2019, 10:28  [ТС] 8
Спасибо! Вроде помогло.

Добавлено через 17 минут
Ещё вопрос. Как в Directory.GetFiles(Path, "*.png"); вместо "*.png" сделать несколько типов файла?

Например "*.png;*.jpeg;*.jpg" Но так не работает, как в этой строке написал.

Добавлено через 16 минут
C#
1
2
3
4
string filepath = Path.GetDirectoryName(path);
imageList = Directory.GetFiles(filepath, "*.png;*.jpg;*.jpeg");
imageIndex = 0;
pictureBox1.Image = Image.FromFile(imageList[imageIndex]); //Ругается на эту строчку, когда пишу много типов файла в Directory.GetFiles(filepath, "*.png; *.jpg*;*.jpeg"); //Пишет ошибку, что: Индекс находился вне границ массива.
0
539 / 348 / 117
Регистрация: 17.08.2014
Сообщений: 1,312
18.01.2019, 11:22 9
Jdjeidkt643432, А сколько у вас раширений? можно в цикле прогнать.

Добавлено через 6 минут
Еще можно так.
C#
1
2
3
4
5
var allowedExtensions = new [] {".png",".jpg",".jpeg"}; 
var files = Directory
    .GetFiles(folder)
    .Where(file => allowedExtensions.Any(file.ToLower().EndsWith))
    .ToList();
0
1 / 1 / 0
Регистрация: 14.11.2018
Сообщений: 39
18.04.2019, 13:45  [ТС] 10
Цитата Сообщение от OwenGlendower Посмотреть сообщение
C#
1
2
3
4
5
6
7
8
9
10
11
12
string[] args = Environment.GetCommandLineArgs();
if (args.Length > 1)
{
    try
    {
        using (var fstream = File.OpenRead(args[1]))
        {
            pictureBox1.Image = Image.FromStream(fstream);
        }
    }
    catch { }
}
Можно теперь эту часть кода на Visual Basic переделать, пожалуйста?
0
Администратор
Эксперт .NET
16535 / 12985 / 5108
Регистрация: 17.03.2014
Сообщений: 26,466
Записей в блоге: 1
19.04.2019, 00:06 11
Jdjeidkt643432, тут нечего переделывать. Код один в один переписывается. Попробуй самостоятельно это сделать. Больше пользы будет.
0
0 / 0 / 0
Регистрация: 21.04.2019
Сообщений: 8
21.04.2019, 20:33 12
Спасибо всем!
0
21.04.2019, 20:33
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.04.2019, 20:33
Помогаю со студенческими работами здесь

Поместить изображение в файл ресурсов
Объясните, пожалуйста, как создать сам файл ресурсов и поместить туда изображение для приложения...

Как поместить изображение на button
Здравствуйте подскажите как можно вставить изображение в button

Как поместить изображение на сцену
Всем привет! Суть вопроса такова: нужно поместить изображение из мувиклипа в качестве фона на...

Как поместить изображение из БД в pictureBox
Здравствуйте! Беру из БД mssql изображение (оно там хранится в поле image) с помощью SqlDataReader:...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru