Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Меню, Тулбар, и вся остальная программа Добавлено: 04.07.07 17:50  

Автор вопроса:  Shota
Народ, подскажите как "обычно" организовывают программы, чтоб они адекватно отражали бы текущее состояние "документа"
поясню на 2х примерах
1 Программа MS Word, когда например выделишь фрагмент текста, то пункт меню "Copy" сразу становится активным, если при этом открыт второй документ, и перейти к нему, то "Copy" становится не активным
2 Любая программа для работы с базой данных - к примеру одновременно могут быть открыты 2 разные формы, одна в режиме редактирования записи, другая в режиме просмотра
так вот, при переходе от одной к другой, кнопка "Save" на тулбаре то активируется то нет.....

Иными словами в зависимости от "состояния" программы, документа, форм........ и т.д. меню, тоолбар..... адекватно реагирует на это.........

Как это реализовать?......... ( чисто теоретически )

Ответить

  Ответы Всего ответов: 4  

Номер ответа: 1
Автор ответа:
 EUGY



Вопросов: 0
Ответов: 454
 Профиль | | #1 Добавлено: 04.07.07 20:06
Как обычно: в событиях форм менять свойства элементов.

Ответить

Номер ответа: 2
Автор ответа:
 Viktor



Вопросов: 9
Ответов: 29
 Профиль | | #2 Добавлено: 06.07.07 10:28
Как сказал EUGY. Другого способа я пока не нашёл. Попробуй спомощью WithEvent....Object.Activate. Когда активируется нужная стрница (или таблица, или ещё что-либо) проверяеш Clipboard на наличее инфы (и если надо то какая имено инфа: текст, picture, или ещё что-то). А дольше просто Button.Enable=(My.Computer.Clipboard.ContainsText=True)

Ответить

Номер ответа: 3
Автор ответа:
 Shota



Вопросов: 22
Ответов: 52
 Профиль | | #3 Добавлено: 07.07.07 16:58
про "ручной" способ я и сам догадываюсь.....
просто я слышал в C++ ( MFC ) есть класс ( не помню как называется ) который обеспечивает корректное отображение меню и тоолбаров в зависимости от состояния документа......
точно не могу объяснить но грубо идея такая:
Есть класс "главного окна", есть класс "документ"
и еще какой то класс, который "синхронизирует" состояние обоих ....... вот я хотел бы получить "описание" приблизительно такой "технологии"

Ответить

Номер ответа: 4
Автор ответа:
 Shota



Вопросов: 22
Ответов: 52
 Профиль | | #4 Добавлено: 07.07.07 17:08
либо конкретный пример:
есть приложение работающее с базой.
на тулбаре есть кнопки:
new
delete
edit
save
undo
условие такое:
ни одна запись не должна быть отредактирована без предварительного "запроса/блокировки".
т.е. изначально все видно только в режиме "только чтение", если юзер зашел в режим "редактирования" то он не должен иметь возможность перейти куда либо, пока не сохранит данные, либо не отменит изменения ( потому как в это время записи на сервере остаются блокироваными )
Причем одновременно юзер может открыть много форм, и переходить по ним как ему угодно, но как только он запросит "редактирование" записи на какой либо форме, то все "замерзает" ( он даже в той же самой форме не должен перейти к другой записи)
и соответственно тулбар и меню на это должны "реагировать"..........

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам