tooltip nad pictureboxem   otázka

VB.NET

dobrý den,

mám picturebox, do kterého vykresluji ikony. Nyní bych nad každou ikonu potřeboval vykreslit tooltip, ale aby se vykresloval jen nad tou ikonou, tam kde neni ikona, by neměl vyzkočit. Informace o poloze ikon mám v poli a já bych tedy měl procházet pole a porovnávat souřadnice ikon se souřadnicí kurzoru. Jenže to nechci dělat pořád, potřeboval bych to tak, ať se začnou projíždět pole s polohami ikon jen když se kurzor zastaví třeba na 1 sekundu, jinak ne. A nevím, jak na to. Mám přidaný objekt ToolTip... asi bych to měl dělat v události Picturebox Hover, nicméně nevím, jak udělat to, že se vždy čeká sekundu a pokud v průběhu toho čekání dojde k pohybu, tak se zase při zastavení začne čekat sekundu... nebo taknějak.

Děkuji za rady.

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

Nikdo??

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

V události MouseMove si zjistíte dle pozic myši, nad kterou ikonou kurzor myši je. Pokud není nad žádnou, schováte ToolTip. Pokud nad nějakou je a ToolTip už byl vidět, tak se jenom myš posunula po jedné ikoně, takže jen ToolTip posunete. Pokud nad nějakou ikonou myš je, ale ToolTip byl předtím skrytý, tak to znamená, že myš na nějakou ikonu vjela a pokud chcete ToolTip zobrazit až po sekundě, nastartujte si nějaký Timer, který to udělá.

Důležitá otázka - nesnažíte se ale psát si svůj vlastní ToolStrip nebo ListView? Pokud ano, měl byste k tomu mít nějaký velmi závažný důvod. To, že komponenty ToolStrip nebo ListView neznáte, dobrý důvod není - vždy je lepší použít standardní systémovou komponentu, která se chová konzistentně a na kterou jsou uživatelé zvyklí.

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

Nene, toolstrip nepíši, je to picturebox s plánkem budovy a na něj se vykreslují ikony pomocí GDI+ (do zvláštní bitmapy). Polohy ikon (souřadnice) jsou uloženy v poli (polohy se mohou měnit, překreslení je řešeno pomocí GDI+). Když tedy chci zjistit, zdali jsem nad ikonou, musím projít pole a testovat souřadnice kurzoru se souřadnicemi ikon... a to právě nechci testovat při každém pohybu. Tooltip nad ikonou (opět informace z daného pole) by se měl vykreslovat až po chvíli, kdy kurzor stojí nad ikonou... tedy viděl bych to na nějaký delay mezi zastavením kurzoru a procházením pole... nevím, jak na to.

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

poradi nekdo??

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