|
|
| Author: | Анатолий Тутов |
Timestamp:26 / 02 / 2009 @ 14:12:04 |
| Tags: |
MFC, WinAPI, CDialog, dialog controls |
I've searched the solution on «how to iterate all controls in a dialog» for a couple of days. None of the MFC manuals was able to help me.
So I've started to search in WinAPI, and I've been succeeded.
The solution was:
for (CWnd *pwnd = GetWindow(GW_CHILD); pwnd != NULL; pwnd = pwnd->GetNextWindow(GW_HWNDNEXT))
{
//Insert your code here. pwnd is a pointer to control window.
}
This code must be used from your dialog class. |
|
Leave the first comment
|
|
|
| Author: | Анатолий Тутов |
Timestamp:11 / 04 / 2007 @ 22:05:58 |
| Tags: |
object-oriented design, java |
Вольный перевод фрагмента книги Брюса Эккеля «Thinking in Java.»
- Изящество всегда вознаграждается. Может показаться, что слишком долго искать действительно красивое решение проблемы, но когда вы сможете легко адапатировать его к новой ситуации, избежав долгих часов, дней, а то и месяцев борьбы с собственным кодом, вы будете вознаграждены(даже если со стороны это будет незаметно). Это позволит вам создать программу, которую легко не только скомпилировать и отладить, но и понимать и изменять, что, собственно, и составляет коммерческую ценность. Понимание этого пункта требует некоторого опыта, поскольку, пока вы делаете фрагмент кода элегантным, кажется, что вы мало продуктивны. Не поддавайтесь спешке и суете, они только замедлят вашу работу.
- Сначала заставь работать, потом ускоряй. Это верно, даже если вы уверены, что фрагмент кода действительно важен и будет основным узким местом в вашей системе. Не торопитесь. Сперва заставьте систему работать с настолько простым решением задачи, насколько это возможно. Уже потом, если решение оказалось не достаточно быстрым, профилируйте его. Почти всегда вы обнаружите, что ваше мнимое узкое место не проблема. Потратьте время на более важные вещи.
- Помните принцип «Разделяй и властвуй». Если проблема, которой вы занимаетесь, слишком сложна, попробуйте вообразить, как должна работать программа, если некий черный ящик скроет все сложности. Этот черный ящик объект. Напишите сначала код, который использует объект, а потом рассмотрите проблемый объект еще раз и инкапсулируйте его сложности в другие объекты.
- Отделите создателя класса, от его пользователя(программиста-клиента). Пользователь класса это своего рода «покупатель», и ему не интересно, что происходит внутри класса. Создатель класса должен быть экспертом в своем деле и создавать код так,
чтобы даже использование его начинающим программистом, было работоспособным и эффективным. Библиотеку использовать легко, только если способ ее использования прозрачен.
Read more...
|
|
Leave the first comment
|
|
|
| Author: | Анатолий Тутов |
Timestamp:26 / 11 / 2006 @ 23:05:28 |
| Tags: |
design |
Нередко случается, что начинающие дизайнеры стараются равномерно «размазать» отдельные слова, фразы, и графику по всему доступному пространству, заполняя углы и не оставляя ни сантиметра свободного места. Этакая боязнь пустого пространства. Страница при этом выглядит неорганизованной и информация воспринимается с трудом.
Read more...
|
|
1 comment
|
|
|
| Author: | Анатолий Тутов |
Timestamp:26 / 11 / 2006 @ 13:14:07 |
| Tags: |
none |
Шахматы asisChess это флэш игра, разработанная одним из участников творческой группы Asis Феликсом Шутенко.
В отличие от большинства доступных в сети flash-шахмат, asisChess позволяют играть как белыми, так и черными фигурами. Игра поддерживает три уровня сложности, использует упрощенный вариант серьезных шахматных алгоритмов и занимает всего около 30 килобайт.
Играть
Скачать
|
|
Leave the first comment
|
|
|
| Author: | Анатолий Тутов |
Timestamp:19 / 11 / 2006 @ 23:41:24 |
| Tags: |
marketing |
Довольно часто встречаются деловые люди, которые считают, что необходимо «действовать», а не «планировать». Неудивительно, что подобное заблуждение популярно, поскольку многие сверхуспешные бизнесмены предстают перед нами именно в амплуа «деятелей». Однако гораздо чаще так поступают начинающие предприниматели, которые действуют в маркетинговой области или верно но в неверном направлении, или в верном направлении, но неверно.
Для того, чтобы составить план, вам не придется прикладывать чрезмерные усилия. Фактически, успешный план может быть составлени за один день. Для начала, не беспокойтесь о стиле и литературности вашего плана. Просто берите бумагу, карандаш, и вперед!
Read more...
|
|
1 comment
|
|
|
| Author: | Анатолий Тутов |
Timestamp:15 / 11 / 2006 @ 00:49:58 |
| Tags: |
semantic web, w3c, web2.0 |
«Первый шаг разместить в сети информацию, которую может естественным образом понимать машина, или перевести уже размещенные информацию в такую форму. Так создается то, что я называю Семантической Сетью сетью данных, которые могут быть обработаны машиной непосредственно или опосредовано.»
--Tim Berners-Lee, Weaving the Web, Harper San Francisco, 1999
Что же такое семантическая сеть?
Согласно представлениям Тима Бернерса-Ли, будущее Сети имеет два аспекта:
- Усиление взаимодействия и сотрудничества в Сети
- Преобразование данных Сети к виду распознаваемому и, соответственно, обрабатываемому машинами.
Read more...
Консорциум W3C уже сформировал несколько групп ориентированных на воплощение идеи семантической сети.
|
|
1 comment
|
|
|
| Author: | Анатолий Тутов |
Timestamp:09 / 11 / 2006 @ 14:26:49 |
| Tags: |
mind hacks, creativity |
Ваш мозг, как и компьютерный генератор случайных чисел, нуждается во входных данных извне для выполнения своей работы. Для того, чтобы он что-нибудь выдал, надо что-нибудь в него вложить!
Read more...
|
|
1 comment
|
|
|
| Author: | Анатолий Тутов |
Timestamp:06 / 11 / 2006 @ 00:36:44 |
| Tags: |
design, non-designers design book |
Четыре принципа
Основные правила и законы графического дизайна могут быть сведены к четырем простым принципам. Уместное использование, сочетание и баланс этих четырех принципов отличают наилучшие образцы дизайнерского творчества.
- Контраст
- Повторение
- Выравнивание
- Сближение
Read more...
|
|
Leave the first comment
|
|
|
| Author: | Анатолий Тутов |
Timestamp:27 / 10 / 2006 @ 18:59:00 |
| Tags: |
structural patterns, object-oriented design, programming |
Мост. (The Bridge pattern)
Задача этого шаблона состоит в том, чтобы разделить реализацию и интерфейс класса и, тем самым, позволить изменять обе части по-отдельности. На первый взгляд, «Мост» очень похож на «Адаптер», хотя бы потому, что это класс преобразующий один тип интерфейса к другому. Однако, он применяется в несколько инной ситуации . Задача «Адаптера» преобразовать интерфейсы одного или нескольких классов к определенному виду. Задача шаблона «Мост» разделить интерфейс класса и его реализацию так, чтобы можно было заменить или даже удалить реализацию класса без ущерба для кода приложения.
Read more...
|
|
Leave the first comment
|
|
|
| Author: | Анатолий Тутов |
Timestamp:27 / 10 / 2006 @ 18:57:00 |
| Tags: |
structural patterns, object-oriented design, programming |
Адаптер. (The Adapter pattern)
Этот шаблон используется для преобразования программного интерфейса одного класса, в интерфейс другого. Мы создаем адаптеры каждый раз, когда пытаемся заставить несвязанные классы работать вместе в одной программе. Идея очень проста: мы создаем класс, который имеет необходимый нам интерфейс и заставляем его взаимодействовать с классом, интерфейс которого отличается.
Read more...
|
|
Leave the first comment
|
|
|
В этом блоге мы собираемся оставлять конспекты изученных материалов из разных областей. Зачем? Чтобы было, что вспомнить. И вдруг кому-то еще пригодится… |
| Блог «Антология Интересов» прежде размещавшийся здесь теперь доступен по другому адресу. Если вы нашли нас через поисковую систему, но на этой странице нет того, что вы искали, или сайт сообщает вам об ошибке, попробуйте поискать там. |
К нам часто попадают посетители, ищущие информацию
про - ИЧП «Барьер-С»,
- НПЦ «Астросистемы»,
- продавцов краски.
К сожалению информацией по данным вопросам мы не располагаем.
|
Where am I?This is a main page of the blog where most recent posts are located. |