| 
| Alkosha | Дата: Среда, 12 Августа 2015, 15:18 | Сообщение # 1 |  |   участник Сейчас нет на сайте | хочу сделать так, чтоб загружать из диалогового окна набор изображений, и чтоб они отображались в виде списка, который прокручивается в дочернем окне в виде списка, imageList - не уверен, оно или нет. Затем из этого списка надо бы сделать возможность выбора картинки мышью с последующим размещением этой картинки на panel.
 То есть, чтоб на panel можно было бы помещать кучу картинок.
 
 Пока вот что есть
 
 Код      .    MemForImage = Image.FromFile(openFileDialog1.FileName);
 pictureBox1.Image = MemForImage;
 imageList1.Images.Add(MemForImage);
 получается загрузить так, чтоб отображалось в пикче-боксе.
 а вот как отобразить imageList , не знаю. В конструкторе формы оно отдельно расположено, на форму нельзя поместить.
 
 Добавлено (09 августа 2015, 02:05)
 ---------------------------------------------
 
 Цитата Alkosha (  ) и чтоб они отображались в виде списка, который прокручивается в дочернем окне в виде списка
 Ага. Для этого есть ListView
 Но почему-то при свойстве largeIcon пикчи всё равно мелкие 16*16 пикселей, вроде...
 
 Тогда для чего нужен ImageList, чего-то я не понял из этого урока:
 https://www.youtube.com/watch?v=imOkrLoFJDo
 
 Добавлено (09 августа 2015, 10:31)
 ---------------------------------------------
 
 Цитата Alkosha (  ) Но почему-то при свойстве largeIcon пикчи всё равно мелкие 16*16 пикселей, вроде... Понил. Я же ImageSize забыл поменять.
 
 Добавлено (09 августа 2015, 10:54)
 ---------------------------------------------
 Что вписать в обработчик событий listView1_ItemCheck, чтоб выбранный айтем отобразился в pictureBox ?
 
 Добавлено (09 августа 2015, 21:07)
 ---------------------------------------------
 Примерно представляю, что напрямую картинку из айтема не скопируешь, надо узнать свойство этого айтема (путь, по которому ссылается картинка), и затем из той директории уже грузить изображение в пикчеБокс.
 Вот как бы узнать это свойство?
 
 Добавлено (11 августа 2015, 17:42)
 ---------------------------------------------
 Предложили сделать так.
 
 Код   private void listView1_ItemActivate(object sender, EventArgs e) {
 ListView.SelectedIndexCollection indexes = listView1.SelectedIndices;
 
 foreach (int index in indexes)
 {
 pictureBox1.Image = listView1.SelectedItems[0].ImageList.Images[index];
 }
 }
 Но в пикче-бокс картинка попадает в таком же виде, в каком она находилась в лист-вью, то есть в виде миниатюры.
 А мне надо её изначальный вид, в котором она хранится на диске.
 
 Добавлено (11 августа 2015, 20:40)
 ---------------------------------------------
 Сделал следующим образом.
 Объявил массив стрингов
 int imgIDX=1;
 string[] path = new string [256];
 
 И теперь при загрузке присваиваю
 path[imgIDX] = openFileDialog1.FileName;
 
 Добавлено (12 августа 2015, 15:18)
 ---------------------------------------------
 как регулировать полупрозрачность в Graphics ?
 А именно brush ректангла и полупрозрачности Image выводимого посредством System.Graphics
 
 
 Сообщение отредактировал Alkosha - Четверг, 13 Августа 2015, 08:43 |  |  |  |  |