VB6.0: inicializovat metoda Řízení uživatelských volána při načtení projektu VB

hlasů
4

Kdykoli jsme nahrát VB projektu zavolá Initializeudálost ovládací prvek uživatele (pokud existuje v rámci projektu). Můj problém je, že je to, že mám nějaký kód UserControl_Initialize, který se pokusí vytvořit instance dalších objektů COM. Na mém sestavení stroje tyto ovládací prvky nejsou registrovány. Jednou z možností je přesunutí kód nějakým jiným způsobem, než Initializeale já chci vědět, jestli existuje lepší řešení? Někde jsem zjistil, že můžeme mít kontrolu, zda je volající aplikace je VB editor pak přeskočit inicializační kód ...

Položena 12/05/2009 v 08:16
zdroj uživatelem
V jiných jazycích...                            


2 odpovědí

hlasů
1

Tato situace nastane pouze tehdy, když byl váš projekt uložen s forma návrháře Otevřeno: to znamená, že při spuštění se zobrazí formulář (snad v pozadí) a v důsledku toho, všechny ovládací prvky na ní je třeba inicializovat. Z tohoto důvodu váš uživatelský ovládací prvek Inicializátor se nazývá -li tento ovládací prvek je používán na formuláři.

Aby se tomu zabránilo, jednoduše uložte projekt s projektantem zavření formuláře.

Odpovězeno 12/05/2009 v 08:23
zdroj uživatelem

hlasů
5

Můžeš použít:

If Not Me.DesignMode Then
  ...
End If

Jiná řešení jsme použili byl trochu funkce, která může být použita na celém světě:

Public Function IsRuntime() as Boolean
   On Error Goto NotRuntime
   Debug.Print(1 / 0)
   IsRuntime = True
   Exit Function
NotRuntime:
   IsRuntime = False
End If

Nevím, jestli to je syntakticky dobře tvarované, ale představa, že by měla být jasná: Pouze v IDE je výrok ladění volal.

Odpovězeno 12/05/2009 v 08:41
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more