Odkaz přímo na soubor   otázka

VB.NET

1)Dobrý den, jsem úplný začátečník a potřeboval bych poradit. V kódu mám odkaz na obrázek (např. ho chci načíst do picture boxu) a nevím, jak docílit toho, abych se odkazoval přímo na ten obrázek, tzn. nebude to přesná cesta, třeba C/documents and setting/blabla.. tedy abych ho mohl spouštět na jakémkoliv pc, kde složku s programem zkopíruju.

2)Další věc je, mám Imagelist s obrázky a chtěl bych nějak vytvořit exesoubor, ve kterém by byly ty obrázky už zakomponované, tj. nemusel bych všude tahat celou tu složku, kdyby jsem vyřešil problém 1)

Děkuji za případné odpovědi

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Dobrý den

1) Pokud budete mít složku s obrázky která se bue jmenovat dejme tomu Images a budete ji mít vždy umístěnou v souboru kde je Vaše aplikace, dostanete se k ní takto:

 IO.Path.Combine(Application.StartupPath, "Images")

Application.StartupPath Vám vrátí cestu k exe souboruImages je jméno té složky s obrázkyIO.Path.Combine dá dohromady cestu a název složky

2) Co se týká zakomponování obrázku do exe souboru, tak si myslím že by mělo stačit ve vlastnostech daného obrázku nastavit Build Action na Compile

nahlásit spamnahlásit spam 0 odpovědětodpovědět

1) vyzkouším

U 2) Kde najdu vlastnosti obrázku?

k jejich načtení používám

For Each path As String In IO.Directory.GetFiles("C:\Documents and Settings\cesta", "*.jpg")

obrazky.Images.Add(Image.FromFile(path))

        Next

Ještě jeden doplňující dotaz, není nějaký jednoduchý způsob (dělám pexeso), jak restartovat hru?

Zatím to dělám tak, že jsem si vytvořil druhý prográmek, který po spuštění spustí to moje pexeso a vypne se

Private Sub NováHraToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NováHraToolStripMenuItem.Click

        Call Shell("C:\Documents and Settings\student.SPSS\Dokumenty\O.K - 4.C\restart\restart\bin\Release\restart.exe", 1)

        End

    End Sub

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Tak bod 1) funguje bez problémů. A ta implementace obrázků přímo do exe souboru nebude nutná, prostě přenesu celou složku s programem kde ty obrázky budou. Díky za radu

nahlásit spamnahlásit spam 0 odpovědětodpovědět

tak newiem ci som vas pochopil spravne ale restartovat ak myslite celu aplikaciu sa da pomocou prikazu :

Application.Restart

(tot vypne a znovu spusti celu aplikaciu , teda ked tam mate viacej formularov tak vypne aj tie resp. ako keby ste aplikaciu znovu spustili.)

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Restarovat aplikaci kvůli založení nové hry je dost prasárna, nemyslíte? Nestačí prostě obrázky nastavit tak, jak byly na začátku, nějakým cyklem a vynulovat proměnné, které používáte?

Ukončení a spuštění aplikace je vyloženě plýtvání výkonem, navíc uživateli problikne okno atd.

nahlásit spamnahlásit spam 0 odpovědětodpovědět

Pokud se použije ImageList, tak se obrázky do EXE souboru zakomponují bez nastavování jakékoliv Build Action. A Compile nebude určitě ta pravá, obrázky se nekompilují. Když už tak Embedded Resource, ale i to si myslím, že není zapotřebí.

nahlásit spamnahlásit spam 0 odpovědětodpovědět
                       
Nadpis:
Antispam: Komu se občas házejí perly?
Příspěvek bude publikován pod identitou   anonym.
  • Administrátoři si vyhrazují právo komentáře upravovat či mazat bez udání důvodu.
    Mazány budou zejména komentáře obsahující vulgarity nebo porušující pravidla publikování.
  • Pokud nejste zaregistrováni, Vaše IP adresa bude zveřejněna. Pokud s tímto nesouhlasíte, příspěvek neodesílejte.

přihlásit pomocí externího účtu

přihlásit pomocí jména a hesla

Uživatel:
Heslo:

zapomenuté heslo

 

založit nový uživatelský účet

zaregistrujte se

 
zavřít

Nahlásit spam

Opravdu chcete tento příspěvek nahlásit pro porušování pravidel fóra?

Nahlásit Zrušit

Chyba

zavřít

feedback