NXWM线程模型与组件交互概览.pptxVIP

  • 0
  • 0
  • 约4.61千字
  • 约 5页
  • 2026-02-26 发布于北京
  • 举报

NxWMThreadingModelMainThreadNXServerThreadCCallbackTouchscreenListenerThreadNXEventCallbackMessagesMouseEventsHardwareTouchscreenEventsStartswindowmanager,ConfiguresTouchscreencalibration,andexits.NuttXNXGraphicsInterfaceMessageQueueCWidgetControlCWindowEventHandlerCWindowMessengerNXListenerThread-ReceiveMessages-Recordstatedata-Raiseevents-SendmessageMessageQueueNXDrawingInterfaceProxiesMessageQueueNote:ManyCopies,oneperwindowCWidgetControlClassesthatderivefromCNxWidgetEventsinclude-Mouseinput-Keyboardinput-Positionalinput-RedrawnotificationsNote:ManyCopies,oneperwidgetMain,start-upthreadTouchscreenlistenerthreadNXserverthreadNXlistenerthreadStartwindowthreadTouchscreenDeviceDriverInterfaceTheremaybeapplicationthreadsassociatedwitheachapplication(notshown)KeyboardListenerThreadConsoleDeviceDriverInterfaceKeyboardEventsMouseEventsConsoleInput

StartWindowTaskThestartwindowtaskdrivesallwidgets.ThefunctionreceiveswindoweventsfromtheNXlistenerthreadsindirectlythroughthissequence:1)NXlistenerthreadreceivesawindowsevent.Thismaybeapositionalchangenotification,aredrawrequest,ormouseorkeyboardinput.2)TheNXlistenerthreadperformsthecallbackbycallingaNXWidgets::CCallbackmethodassociatedwiththewindow.3)NXWidgets::CCallbackcallsintoNXWidgets::CWidgetControltoprocesstheevent.4)NXWidgets::CWidgetControlrecordsthenewstatedataandraisesawindowevent.5)NXWidgets::CWindowEventHandlerListwillgivetheeventtoNxWM::CWindowMessenger.6)NxWM::CWindowMessengerwillsendtheamessageonawell-knownmessagequeue.7)ThisCStartWindow::startWindowtaskwillreceiveandprocessthatmessage.

WindowEventsSpecificapplicationIApplicationINxWindowCCallbackCWindowMessengerSpecificwindowCWidgetControlIWindowEventHandler12341.Redraw,positionchange,keyboardormouseinputorblockedeventreceivedandastaticCCallbackmethodiscalled.2.staticCCa

文档评论(0)

1亿VIP精品文档

相关文档