zHz00 Untitled

пятница, 19 февраля 2016
23:58 П.В. Румянцев // Азбука программирования в Win32 API (1998)
Я немного рублю в Win32 API, поэтому читал скорее для лулзов и потому что я читал книжку того же автора "MFC: внутренний мир", которая была весьма любопытной.

В основном книжка концентрируется на элементах управления и работе с ними. Также слегка затронута тема многозадачности и работа с реестром. Для "азбуки" подойдёт, но не более.

Что я узнал нового, так это о работе с элементами управления. Я-то всегда это делал через MFC/C++ Builder, поэтому не знал внутренней кухни. Теперь знаю. И кое-что меня удивляет. Выходит, что SendDlgItemMessage() не возвращает управление не раньше, чем сообщение обработается целевым окном?

Структура common controls удручает. Нет единообразия в работе с ними. Можно было это привести в порядок же! Пичалька.

Из недостатков:
1. Опечатки и набор. Слова латинскими буквами иногда написаны вверх ногами1.
2. У автора по некоторым вопросам довольно специфичное мнение. Например, что на главном окне нельзя размещать кнопки, т.к. программа будет нестабильно работать. Или что если создать диалоговое окно через DialogBox(), то его сообщения будут обрабатываться родительским окном. Я-то думал, что диалоговое окно организует свой цикл обработки сообщений. Возможно, я ошибался. Ну и ряд иных утверждений.
3. Почему-то в теме о многозадачности рассмотрены семафоры и события, а критические секции и мьютексы пропущены. Мне кажется это нелогичным, т.к. мьютексы и критические секции, во-первых, более "базовые", во-вторых, проще для понимания.

@темы: Программирование, Книги

URL
Вот скачал себе оффлайнового клиента. Постоянно забываю, ...
:)
Не важно, что происходит снаружи, главное - что творится ...
Вчера оттягивались вот с етими парнями www.hitchhikersgui...
Скоро домой.
[*]www.samurai.no [*]www.2advanced.com

20.02.2016 в 14:34

20.02.2016 в 14:34
Выходит, что SendDlgItemMessage() не возвращает управление не раньше, чем сообщение обработается целевым окном?
Почему удивляет? И простой SendMessage так работает.

Структура common controls удручает. Нет единообразия в работе с ними. Можно было это привести в порядок же!
Увы, их писали разные люди в разное время. Некоторые контролы вообще писались "для себя", и попали в паблик только после того, как их кто-то раскопал и стал использовать. Другие сначала задумывались гораздо проще (и для этих целей их АПИ имело смысл), а потом расширялись с сохранением совместимости.

А само оконное API, по-моему, спроектировано очень хорошо. Ему уже 25 лет (многие функции введены ещё в Windows 1.0), каких только расширений оно не пережило, и все включило в себя, не ломая принципов.
URL
Добавить комментарий

Расширенная форма

Подписаться на новые комментарии
Получать уведомления о новых комментариях на E-mail