Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Visual C# 2008 - práca so zdrojmi

Chcel by som do projektu pripojiť nejaké obrázky. Teraz to mám tak, že obrázky sú pripojené do projektu, pri kompilácii sa kopírujú k EXE súboru a normálne s nimi pracujem:

image[0] = Image.FromFile("picture.bmp");

Vedel by mi niekto poradiť ako tento obrázok pridať do zdroja (*.resx) a ako s ním potom pracovať, čiže vytiahnuť ho zo zdroja resx do premennej image[0]?

Do zdroja viem obrázky pridať takým neštandardným spôsobom:
1. Vo Form1 vyberiem vlastnosť BackgroundImage
2. Klepnem na ...
3. Vyberiem Project resource file (resources.resx)
4. Klepnem na Ok a viem pridávať obrázky.

Takže, chcel by som vedieť, ako to pridať štandardným spôsobom a ako ich potom v programe zo zdroja vybrať. Môže mi niekto poradiť?

Předmět Autor Datum
Pokud budou v resource, pak muzes pouzit Image.FromResource() - doufam, ze tam neco takoveho je
Jan Fiala 12.07.2009 20:10
Jan Fiala
Ďakujem za snahu, ale ako pozerám, nie. Najlepšie by sa hodilo asi FromStream(), ale to asi nie.
msx. 12.07.2009 20:38
msx.
FromStream je urcite pouzitelne. Takze jeste si najdi praci s resource (to bude zrejme nejaky objekt…
Jan Fiala 12.07.2009 21:09
Jan Fiala
no dobre, zajtra to okuknem, potom dám vedieť, zatiaľ ďakujem.
msx. 12.07.2009 21:28
msx.
Zo zdroja by si mal vediet vytiahnut obrazok pomocou: pictureBox.Image = Properties.Resources.[imag…
Intex 12.07.2009 21:11
Intex
Ďakujem, pozriem sa na to neskôr, asi až zajtra, lebo teraz mám problém s KeyDown udalosťou, ale to…
msx. 12.07.2009 21:27
msx.
Neviem do toho zapísať názov obrázka a neviem sa k správnemu zápisu preklikať cez MSDN.
msx. 28.07.2009 13:02
msx.
Takže do resource som tie obrázky dostal, ale v programe sa k nim ako dostanem? Tento zápis sa mi zd…
msx. 29.07.2009 13:12
msx.
Keď sa pozrieš na súbor Resources.resx v strome s projektami (Solution Explorer), tak k nemu sa gene… poslední
los 29.07.2009 14:45
los

Keď sa pozrieš na súbor Resources.resx v strome s projektami (Solution Explorer), tak k nemu sa generuje súbor Resources.Designer.cs. Tam uvidíš, ako sa používa ResourceManager na prečítanie dát zo zdroja uloženého v *.resx súbore.

Jednoduchšie je pridať súbor do projektu a nastaviť mu Build Action na Embedded Resource. K obsahu súboru sa potom dostaneš cez metódu GetManifestResourceStream inštancie triedy Assembly. Meno zdroja, ktoré je argumentom tejto metódy, sa skladá z predvoleného menného priestoru a jeho mena (resp. cesty v rámci projektu).

Zpět do poradny Odpovědět na původní otázku Nahoru