GTK的訊息流說明(X Window做後端的情況)
1. 初始化時,GDK向mainloop註冊一個事件源(gdkevents-x11.c:gdk_events_init),讓mainloop掛到X Window的socket上。
2. GTK呼叫GDK的gdk_event_handler_set函式設定事件處理函式(gtkmain.c: do_pre_parse_initialization)gtk_main_do_event。
3. 當有X Window事件過來時,mainloop呼叫事件源的事件分發函式gdk_event_dispatch。
4. gdk_event_dispatch中呼叫gdk_event_translate把Xevent轉換成GdkEvent,並放到Gdk的訊息佇列中。
5. gdk_event_dispatch中從GDK的訊息佇列中取出事件,並呼叫gtk設定的事件處理函式gtk_main_do_event。
6. gtk_main_do_event中呼叫gtk_get_event_widget得到事件的Widget,然後呼叫相應widget函式。
7. widget函式裡呼叫各控制元件過載的函式或者所註冊的事件處理函式。
8. 這樣,事件就到達了你所connect的回撥函式裡。
相關文章
- 【X$VIEW】X$部分視訊說明View
- 有這個情況 說明你家的攝像頭被人控制了~
- 後端做了負載均衡的情況下,前端怎麼做分片上傳檔案?後端負載前端
- RabbitMQ-如何保證訊息在99.99%的情況下不丟失MQ
- fastadmin 偽靜態nginx 無法訪問後端的情況ASTNginx後端
- 慧榮科技針對網傳不實訊息的澄清說明
- SpringBoo2 在使用WebFlux的情況下的後端國際化SpringWebUX後端
- 基於fusion的DirectFB訊息流
- 使用 Angular Universal 進行伺服器端渲染避免 window is not defined 的錯誤訊息Angular伺服器
- 檢視temp表空間的消耗明細情況
- vue中下載excel的使用,後端連結兩種情況,一個是連結,一個是檔案流VueExcel後端
- 在沒有上傳伺服器端的情況下看到上傳圖片的效果圖window.createObjectURL伺服器Object
- 0x2_訊息的傳送
- Nginx+upstream針對後端伺服器容錯的配置說明Nginx後端伺服器
- 訊息推送背後的思考
- Window X86和X64的區別 Window x64和Window x86是什麼意思
- [轉]MQ詳解以及各種訊息中介軟體說明MQ
- 訊息佇列之事務訊息,RocketMQ 和 Kafka 是如何做的?佇列MQKafka
- 知道 Redis-Cluster 麼?說說其中可能不可用的情況Redis
- 不用vuex的情況下,隔代元件間的通訊Vue元件
- 五分鐘學後端技術:如何學習後端工程師必學的訊息佇列後端工程師佇列
- Nginx部署前後端分離服務以及配置說明Nginx後端
- EMQ X MQTT 5.0 伺服器的保留訊息與訊息過期間隔MQQT伺服器
- Kafka(分散式釋出-訂閱訊息系統)工作流程說明Kafka分散式
- 商品詳情 API 返回值說明API
- 在不安裝oracle客戶端的情況下,使用PLSQLOracle客戶端SQL
- 我與訊息佇列的八年情緣佇列
- MobTech ShareSDK 後臺配置說明
- dotnet 如何從 Gtk 3 的視窗到對應的 X11 視窗
- mysql索引失效的情況MySql索引
- 成都現在的情況
- NoClassDefFoundError的兩種情況Error
- 使用Redis做訊息佇列Redis佇列
- IT職場:哪些情況下需要進行詳細的價值流分析?
- Flowable - 6.6.0 更新說明 (主流工作流引擎)
- dotnet 後臺執行緒傳送 X11 視窗訊息執行緒
- oradebug的使用說明
- Sybase的效能說明