Chyba: BN_DOUBLECLICKED popisovači zprávy přístupů není v dialogovém okně MFC

Překlady článku Překlady článku
ID článku: 247323 - Produkty, které se vztahují k tomuto článku.
Tento článek byl archivován. Je nabízen v takovém stavu, v jakém je, a nebude již nadále aktualizován.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

Příznaky

Na Windows CE použití tříd MFC při přidání popisovač BN_DOUBLECLICKED zprávu pro tlačítko na dialogové okno nebo okno, obslužnou rutinu není nazývá při poklepání na tlačítko. Obslužnou rutinu nazývá na Microsoft Windows 95, Microsoft Windows 98, Microsoft Windows NT 4.0 a Microsoft Windows 2000.

Příčina

Tento problém je způsobeno chybou v operačního systému Windows CE.

Řešení

Jeden možné rozlišení je BN_CLICKED popisovač pro tlačítko Přidat. Mimo obsluhu, použijte k ověření, zda klepnutí na tlačítko na v posledních několika milisekund kód podobný následujícímu:
  static BOOL s_bLastClicked = TRUE;
  static DWORD s_dwTickCount = 0;
  if (s_bLastClicked)
  {
    DWORD dwTickCount = GetTickCount();
    if ((dwTickCount - s_dwTickCount) < 500) //Last click less than 500ms?
    {
      s_bLastClicked = FALSE; //Was double-clicked, don't test next time...

      //Assume a double click...
      //Do your double-click code here...
    }
    s_dwTickCount = dwTickCount;
  }
  else
     s_bLastClicked = TRUE;
				
ruční přidání CS_DBLCLKS styl okna třída a přidání BS_NOTIFY styl pro tlačítko nepomůže. Ruční proces však neumožňuje zpráva odeslána při spuštění na ostatních platformách kromě Windows CE.

Prohlášení

Společnost Microsoft potvrzuje, že se jedná o chybu v produktech společnosti uvedených na začátku tohoto článku.

Další informace

Kroky pro reprodukci chování

  1. Vytvoření nové aplikace založené na dialogové okno pomocí WCE MFC AppWizard. Přijmout všechny výchozí hodnoty a klepněte na tlačítko Dokončit.
  2. V metodě OnInitDialog přidejte následující kód před vratky výkazu:
    SetClassLong(m_hWnd, GCL_STYLE, GetClassLong(m_hWnd, GCL_STYLE) | CS_DBLCLKS);
  3. Dialogové okno Přidat tlačítko. Klepněte pravým tlačítkem myši a klepněte na příkaz Vlastnosti. Klepněte na kartu styly a zaškrtněte políčko Oznámit.
  4. Klepnutím na nabídku Zobrazit a výběrem položky nabídky ClassWizard použít ClassWizard. V části Identifikátory objektů klepněte tlačítko IDC_BUTTON1. V části zprávy klepněte na zprávu BN_DOUBLECLICKED. Klepněte na tlačítko Přidat funkci a potom klepněte na tlačítko Upravit kód.
  5. Umístěte ukazatel myši na konec v BN_DOUBLECLICKED popisovač zprávy tlačítka.
  6. Sestavení aplikace a spusťte jej při dokončení budovy.
Měli Všimněte si, že zarážce není získat přístupů při spuštění emulátoru nebo při spuštění v zařízení. Pokud se provedení kroků uvedených výše v aplikaci Win32 není systémem Windows CE obslužnou rutinu pracuje podle očekávání.

Vlastnosti

ID článku: 247323 - Poslední aktualizace: 28. února 2014 - Revize: 2.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Windows CE Toolkit for Visual C++ 6.0 na těchto platformách
    • Microsoft Foundation Class Library 4.2
Klíčová slova: 
kbnosurvey kbarchive kbmt kbbug kbbutton KB247323 KbMtcs
Strojově přeložený článek
Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.
Projděte si také anglickou verzi článku:247323

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com