Multiotázka - Vytváření objektů za chodu programu a uložení proměné, aby vydržela přes ukončení programu   zodpovězená otázka

VB6/VBA

všechno podstatný je vlastně v nadpisu, ale

potřebuju kód na vytvoření více labelů, když už program běží a zároveň je přejmenovávat

a nějak uložit proměnou, protože už se s tím patlám skoro měsíc, a nevím ani ťuk

Když se rozhodnete někdo napsat : "nauč se hledat" tak aspoň napište, kde najdu to, co hledám. Díky

nahlásit spamnahlásit spam -2 / 2 odpovědětodpovědět

Jen pár tipů, snad k užitku...

Proč chceš přejmenovávat? (měnit Name)

Využij Load a Index pro vytvoření prvků za běhu:

Na formuláři vytvoř jeden myLabel, nastavit mu

vlastnost Index = 0, dále za běhu programu...

... vytvářet labely 1,2,3...

Load myLabel(index)

... a netřeba měnit Name labelu.

Nebo přejmenovat = změnit Caption? :)

myLabel(1).Caption= "prejmenovat"

Ukládat třeba do souboru a opět z něj data načítat

nebo použít registr plus GetSetting a SaveSetting...

Neuložíš celé objekty(labely), jen jejich vlastnosti,

pak vytvoříš opět labely se zcela stejným nastavením.

...

Najdi si to, co právě hledáš... :)

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

kdyby to šlo do toho souboru nějak .. vysvětlit to blbci

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

- vytvořit "ručně" Label1(0)

- tvorba dalších

Load Label1(1)

Load Label1(2) atd.

- jestli půjde měnit jméno za chodu programu si nejsem jistý, protože vlastnost Name je ReadOnly

- uložit proměnnou třeba do souboru

uložení

Open Soubor for Output as #1

Print #1, Promenna

Close #1

načtení

Open Soubor for Input as #1

Read #1, Promenna

Close #1

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

ha - někdo byl o minutu rychlejší

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

Minuta sem, minuta tam... :)

...

Nutno znalost čtení mezi řádky

k nalezení reakcí i na proměnou. :D

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

asi už to možná vidím

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

A s tou trvalou proměnou?

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

Tak hodnotu té proměnné si můžete uložit kam chcete, pak ji jen zpátky načtete. Například ji můžete uložit do souboru, popř. do databáze, nebo třeba do registru. Tuším že na to je příkaz savesetting a getsetting.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

a kde vezmu ten registr?

nahlásit spamnahlásit spam -1 / 1 odpovědětodpovědět

Použijete-li GetSetting a SaveSetting,

tak se vytvoří včetně klíčů a nemusíš

se o to vůbec starat. :)

(..\VB a VBA Program Settings\tvoje app)

Ale můžeš použít API, vytvořit si vlastní

a zapisovat a číst z něj.

nahlásit spamnahlásit spam 1 / 1 odpovědětodpovědět

a co přesně je tam za parametry u GetSetting?

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

Co trochu vlastní snahy a samostatnosti? ;)

Navratova_hodnota = GetSetting(jmeno_aplikace, sekce, klic, defaultni_hodnota)

Viz např.:

http://programujte.com/?akce=clanek&cl=2...

...

Další otázka bude na SaveSetting ? :)

nahlásit spamnahlásit spam 1 / 1 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