информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
За кого нас держат?Портрет посетителяСетевые кракеры и правда о деле Левина
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Бэкдор в xz/liblzma, предназначенный... 
 Три миллиона электронных замков... 
 Doom на газонокосилках 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / programming
Имя Пароль
ФОРУМ
все доски
FAQ
IRC
новые сообщения
site updates
guestbook
beginners
sysadmin
programming
operating systems
theory
web building
software
hardware
networking
law
hacking
gadgets
job
dnet
humor
miscellaneous
scrap
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
[C++] Мы тебя прощаем :))) 25.07.03 04:54  Число просмотров: 1423
Автор: void <Grebnev Valery> Статус: Elderman
<"чистая" ссылка>
*******************************
> А тебе не кажется, что всю твою идею и то как ты её описал
> можно представить одной фразой:
> "Нажимая на один контрол я хочу что бы изменялись многие"
> Так ?
>
> Тогда я не понимаю всех твоих проблемм. У тебя есть
> внутренее представление состояния твоей программной
> системы.
> Нажимая котрол(ы) ты управляешь этим состоянием. А посылая
> контролам сообщение Update перересовываешь их в
> соответствие с этим состоянием.
>
> Говоря другими словами: в обработчике WM_COMMAND кнопки ты
> меняешь какие то структуры (не думая о других элементах UI)
> а в конце рассылаешь "броадкастный" WM_UPDATE. Обрабочик
> этого сообщения каждого контрола сам все и отрисует у себя
> как надо.

А:
А я разве не про это написал, в том числе про бродкаст?
Кроме того, проблема, как я постил СТИЛЯ. В ряде случаев можно обойтись традиционным способом реагирования на события (не "броадкастный" мессагинг и вызов сответствующих обработчиков) при помощи непосредственного вызовов переопределенных "интерфейсных" методом классов, с тем, чтобы те передали эти вызовы по иерархии вниз. Ты и я в своём посте пишем про "плоскую" модель, когда объекты обмениваются мессагами, а не вызывают соответствующие изменению состояния методы. Это проще в некоторых ситациях, но не во всех. И я пытаюсь найти нечто среднее.

******************************
> >Обработчики
> > кнопки CPage1::CButton m_StartEdit на закладке CPage1
> не
> > могут непосредственно повлиять, например, на состояние
> > чекбоксов или эдитов на закладке CPage2, т.к. она
> (кнопка)
> > не знает даже указателя на диалог CPage2. При переводе
> > приложения в режим редактирования данных мы не сможем
> > простым путём изменить состояние контролов других,
> > «НЕЗАВИСИМЫХ» объектов, например, сделать их
> > ReadOnly(false).
>
> И слава богу что не можем... а то бы такого наворотили... И
> вообще, имхо, "горизонтали" - это зло. Все должно идти с
> верху в низ, и с низу в верх. Никаких горизонтальных связей
> !

А:
Не знаю, что и ответить про "горизонтали". В том смысле, в котором написано выше, я с тобой согласен. Но если посмотреть как работает паттерн "посредник" - это что, "верикаль" или "горизонталь". Это плоская, не иерархическая модель взаимодействия. Не думаю, что "паттерны проектирования" - это плохо.

******************************
> > В
> > БОЛЬШИХ ПРОЕКТАХ, КОГДА НЕОБХОДИМО СИНХРОНИЗИРОВАТЬ
> > ПОВЕДЕНИЕ БОЛЬШОГО ЧИСЛА ЭЛЕМЕНТОВ УПРАВЛЕНИЯ,
> КОНТРОЛЫ НЕ
> > ДОЛЖНЫ ИЗМЕНЯТЬ СОСТОЯНИЕ ДРУГИХ КОНТРОЛОВ
> !!!НАПРЯМУЮ!!!......
> Ты знаешь а я вчера на карте Америку обнаружил ! Вот
> ведь... :))))

A:
Зря смеёшься, сколько угодно таких орлов видел, в том числе и не пьющих.
Топик и для них.


******************************
> Правильно, а все же если отделить отображение от данных ?
> Что если безнесс логика меняет структуры внутрение, а
> котрол получая лишь одно сообщение, на основе этих
> структур, перересовывается ? Мож так все же проще ?
>

A:
А вот здесь на пять баллов. Хотя это и тема другого топика, но мысль очень здравая. Я даже в борланде не читал данные непосредственно в контролы, за исключением, например, TreeView, и других контролов "только для навигации по набору данных ". Самое прикольное, что обсуждая здесь вопросы архитектуры, мы вообще ничего не говорим о представлении данных. А живёт то всё вместе, хорошо если в разных квартирах.

********************************
> Нафига три, где достаточно одного ?

A:
Ты смеёшься? Какое состояние - ST_CLOSE ? ;)))


********************************
> P.S. Дальше без комментариев... если честно, то дурно стало
> ;)))

Думаешь мне легко !!!ЭТО!!! перечитывать. Там у меня всё по "шагам". Боюсь, чтобы следующий шаг не был в больничную койку в психушку. Она тут под боком;))))
<programming> Поиск 






Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach