Aktivní okno vs. neaktivní   zodpovězená otázka

VB.NET, .NET

Zdravim, jak poznám ve VB, zda mám okno aktivní?

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

Co znamená zda mám okno aktivní?!

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

Rozumím tomu tak, že je-li formulář VB aplikace, např. Form1, v popředí, je aktivní. Pokud je v popředí jiné okno, ať již jiný formulář stejné VB aplikace, např. Form2 nebo okno jiné aplikace, okno s Form1 není aktivní a může být v popředí Form2 nebo okno jiné aplikace

Ke sledování těchto stavů mohou posloužit událostní procedury

Form1_Activated

Form1_Deactivate

nebo třeba

Form2_GotFocus

Form2_LostFocus

Sledovat aktivaci a fokus součaně nejde - je to buď / anebo

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

Ano to jsem myslel.

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

A řeší to problém? Kromě událostních procedur formulářů lze také okamžitý stav zjistit třeba podle vlastnosti Focused (vrací Boolean):

   ' jsou dva formuláře, Form1 a Form2, na Form1 je Button1
 
   Private Sub Button1_Click(ByVal sender As System.Object, _
           ByVal e As System.EventArgs) Handles Button1.Click
        Form2.Show()
        MsgBox("Má Form1 fokus? " & Me.Focused & ". A Form2? " & Form2.Focused)
  End Sub

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