Aracılığıyla paylaş


mfc ActiveX denetimleri: Hisse senedi olayları bir ActiveX denetimi ekleme

Hisse senedi olayları farklı özel olay sınıfı tarafından otomatik olarak tetiklenir, COleControl.COleControlOrtak eylemlerden kaynaklanan olayları ateşlenmesine önceden tanımlanmış üye işlevler içerir.Bazı ortak eylemler tarafından uygulanan COleControl tek - ve çift - clicks denetim, klavye olayları ve değişiklikleri fare düğmelerinin durumunu içerir.Hisse senedi olaylar için olay eşleme girdileri her zaman önünde tarafından event_stock öneki.

Stok desteklediği olaylar Olay Sihirbazı Ekle

COleControl Sınıfı, aşağıdaki tabloda listelenen on hisse senedi olayları sağlar.Bilgisayarınızın denetimini kullanarak istediğiniz olayları belirtebilirsiniz Olay Ekleme Sihirbazı'nı.

Hisse senedi olayları

Olay

İşlev tetikleme

Comments

Tıklat

void FireClick)

Denetimin herhangi bir fare yakalar, harekete buttonup (sol, Orta veya sağ) iletisi aldı ve düğmesi üzerinde denetim serbest.Hisse senedi MouseDown ve MouseUp olaylarını önce bu olay oluşur.

Olay eşleme girişi: (EVENT_STOCK_CLICK)

DblClick

void FireDblClick)

Click benzerdir ancak harekete ne zaman bir buttondblclk bir ileti aldı.

Olay eşleme girişi: (EVENT_STOCK_DBLCLICK)

Hata

void FireError( SCODE scode, LPCSTR lpszDescription, UINT nHelpID = 0 )

ActiveX denetimi yöntemi çağrısı ya da özellik erişimi kapsamı dışında içinde bir hata oluştuğunda tetiklenir.

Olay eşleme girişi: (event_stock_errorevent)

KeyDown

void FireKeyDown( short nChar, short nShiftState )

Ne zaman harekete bir WM_SYSKEYDOWN veya WM_KEYDOWN bir ileti aldı.

Olay eşleme girişi: (event_stock_keydown)

KeyPress

void FireKeyPress (kısa *pnChar)

Ne zaman harekete bir WM_CHAR bir ileti aldı.

Olay eşleme girişi: (event_stock_keypress)

KeyUp

void FireKeyUp( short nChar, short nShiftState )

Ne zaman harekete bir WM_SYSKEYUP veya WM_KEYUP bir ileti aldı.

Olay eşleme girişi: (event_stock_keyup)

MouseDown

void FireMouseDown( short nButton, short nShiftState, float x, float y )

Varsa harekete buttondown (sol, Orta veya sağ) aldı.Bu olayı hemen harekete geçirilmeden önce fare yakalanır.

Olay eşleme girişi: (event_stock_mousedown)

MouseMove

void FireMouseMove( short nButton, short nShiftState, float x, float y )

Ne zaman harekete bir WM_MOUSEMOVE bir ileti aldı.

Olay eşleme girişi: (event_stock_mousemove)

MouseUp

void FireMouseUp( short nButton, short nShiftState, float x, float y )

Varsa harekete buttonup (sol, Orta veya sağ) aldı.Bu olay harekete geçirilmeden önce fare yakalama serbest bırakılır.

Olay eşleme girişi: (event_stock_mouseup)

ReadyStateChange

void FireReadyStateChange)

Denetim geçişleri sırasında sonraki hazır durumu nedeniyle alınan veri miktarını harekete geçirdi.

Olay eşleme girişi: (event_stock_readystatechange)

Hisse senedi olay kullanarak Ekleme Sihirbazı olay Ekle

Hisse senedi olayları eklemek, gerçek etkinlik Açmadığınızda temel sınıfı tarafından otomatik olarak işlendiğinden özel olaylar eklemekten daha az çalışma gerektirir COleControl.Aşağıdaki yordamı kullanarak geliştirilen bir denetim hisse senedi olay ekler mfc ActiveX denetim Sihirbazı.Bir tuşa bastığınızda ve denetim etkin olduğunda adlı KeyPress olayı tetikler.Bu yordamı, hisse senedi diğer olayları eklemek için de kullanılabilir.KeyPress seçili stok olay adı değiştirin.

Olay Ekleme Sihirbazı'nı kullanarak KeyPress hisse senedi olay eklemek için

  1. Denetimin işleyiş proje yüklenemedi.

  2. Class View'de sağ tıklatın kısayol menüsünü açmak için ActiveX denetiminin sınıf.

  3. Tıklatın kısayol menüsünden EkleOlay ekleme.

    Bu olay Ekleme Sihirbazı'nı açar.

  4. İçinde Olay adı Seç aşağı açılan liste KeyPress.

  5. Son düğmesini tıklatın.

Hisse senedi olayları için olay sihirbaz değişiklikleri Ekle

Hisse senedi olayları denetimin temel sınıfı tarafından işlenir çünkü olay Ekleme Sihirbazı'nı sınıf bildiriminize herhangi bir şekilde değişmez.Olay için denetimin olay eşleme ekler ve bir giriş yapar.IDL dosyası.Denetimin olay Harita Denetim sınıfı uygulamasında bulunan aşağıdaki satırı eklenir (.cpp) dosyası:

EVENT_STOCK_KEYPRESS()

KeyPress olayı harekete bu kodu ekleyerek, bir WM_CHAR bir ileti aldı ve denetimi etkin durumda.KeyPress olayı diğer zamanlarda Açmadığınızda işlevini çağırarak harekete (örneğin, FireKeyPress) dan denetim kodu içinde.

Olay Ekleme Sihirbazı'nı, denetim için aşağıdaki kod satırı ekler.IDL dosyası:

[id(DISPID_KEYPRESS)] void KeyPress(SHORT* KeyAscii);

Bu satır, KeyPress olayı kendi standart dispatch ID ile ilişkilendirir ve KeyPress olayı öngörmeye kapsayıcı sağlar.

Ayrıca bkz.

Başvuru

COleControl sınıfı

Kavramlar

mfc ActiveX denetimleri

mfc ActiveX denetimleri: yöntemleri