2013-03-16 2 views
1

Я пробовал найти решение, но безрезультатно. Я считаю, что я хочу, это конкатенация ...Visual Basic 2010, ресурс Picturebox && Variable?

У меня есть переменная "pictureid=face2" в папке Мои ресурсы У меня есть картина под названием "face2.jpg". На форме у меня есть коробка с картинками.

Это код, который я не могу заставить работать

pictureBox1.Image = Properties.Resources.(pictureid + ".jpg"); 

Где я буду неправильно? Ошибка говорит, что ожидается идентификатор.

+0

ли вы имеете в виду '2010' Visual Studio? –

ответ

1

Image ожидает Image or a descendant thereof (Bitmap и объекты Metafile), которые вы можете использовать, как вы закодированы, если добавить изображение в ваши ресурсы проекта (Edit: я должен уточнить - сделать это, перейдите в Project> Properties> вкладка Ресурсы и «Добавить ресурс» не просто поместите его в папку):.

pictureBox1.Image = Properties.Resources.face2; 

Если вы не хотите, чтобы включить изображение в вашем проекте, вы можете использовать ImageLocation, которые будут принимать а не объекта:

pictureBox1.ImageLocation = pictureid + ".jpg"; //assuming you include it in the same folder as the exe 

Вы также могли бы сделать что-то вроде этого:

Image face2 = Image.FromFile(pictureid + ".jpg"); 
pictureBox1.Image = face2; 
+0

Thankyou очень много! Я понятия не имел, что могу ссылаться на «debug/bin» в качестве корневой папки! –

+1

pictureBox1.ImageLocation = pictureid + ".jpg"; Отлично работает для меня! Извините, я бы поднял ответ, но им потребовалось по крайней мере 15 очков ?! точечная система на этом веб-сайте чувствует себя как игра для меня .. где люди становятся зависимыми от того, сколько «очков», которые имеют .. sigh .... Спасибо всем тем же raney !! –

+0

Yep - если метод не требует полностью определенного пути, он будет считать Environment.CurrentDirectory. Рад, что это сработало; не стесняйтесь отмечать как ответ, вместо голосования. – raney

Смежные вопросы