![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Профили меню в БД MSSQL [D7, XP]
pleasure © (2010-03-31 21:43:00)ни как не додумаюсь как и что сохранять в базе, что бы при восстановлении формы меня восстанавливалось из БД
Anatoly Podgoretsky (2010-04-01 09:15:00) [21]
> И. Павел © (01.04.10 08:56) [9]
Такая защита взламывает за секунду.
И. Павел (2010-04-01 08:56:00) [22]А может быть просто делать пункты меню видимыми/невидимыми (активными/неактивными) в зависимости от профиля? Тогда нужно сохранять только по одному числу для каждого пункта: 0-этот пункт невидимый, 1-видимый. Например есть пункты: Создать, Редактировать, Просмотреть, Выход. Для пользователя можно сохранить (0, 0, 1, 1) а для администратора (1, 1, 1, 1).
pleasure (2010-04-01 08:50:00) [23]какие параметры mainmenu или actionlist сохранять, чтобы затем восстанавливать при открытии. (сохраняется один раз и при необходимости дополняется или урезается)
И. Павел (2010-04-01 08:25:00) [24]Пробелы исчезли :)
Файл
Открыть
Открыть файл : OnOpenFile
Открыть проект : OnOpenPrj
Закрыть :OnCloseFile
О программе
Справка : OnHelp
О программе : OnAbout
Выход
Выход :ExitProgram
И. Павел (2010-04-01 08:24:00) [25]В частном случае можно в самой программе задать набор видов меню, выбираемых по номеру.
В общем случае я бы делал в ini файле для каждого профиля так:
Файл
Открыть
Открыть файл : OnOpenFile
Открыть проект : OnOpenPrj
Закрыть :OnCloseFile
О программе
Справка : OnHelp
О программе : OnAbout
Выход
Выход :ExitProgram
То есть вложенность показана числом пробелов (или других символов) в начале строки, а после двоеточия (или в новом ключе - кому как нравится) - имя обработчика пункта меню.
Если этот файл общий - наверное, можно просто разместить его в общедоступном месте.
Хотя опять-таки мне не понятно, в чем конкретно у автора возникла сложность.
pleasure (2010-04-01 07:11:00) [26]не формы, а меню (профили пользователей - административное меню, меню оператора, и т.д.)
MsGuns (2010-04-01 02:10:00) [27]в базе хранить положение и размер экранной формы - самый настоящий бред, ибо база одна, а этих "экранов", т.е. пользователей-клиентов очмного.
Медвежонок Пятачок (2010-04-01 00:24:00) [28]как и что сохранять в базе, что бы при восстановлении формы меня восстанавливалось из БД
как: инсертами
что: как минимум иерархию элементов меню, их капшены и ID
И. Павел (2010-03-31 23:11:00) [29]
> Профили меню в БД MSSQL
Хотя может быть я не понял вопроса...
Что такое 'профиль меню'?
И. Павел (2010-03-31 23:07:00) [30]Часто для восстановления состояния формы используют ini файлы (TINIFile):
http://mirsoft.3dn.ru/publ/3-1-0-54
Для каждой формы сохраните там:
Form1.Top
Form1.Bottom
Form1.Width
Form1.Height
ну и все остальное, что нужно.
А при запуске программы читайте INI файл и восстанавливайте состояние формы.
Еще можно реестр использовать. Скорее всего, найдутся и сторонние компоненты, которые это делают.
База тут ни при чем :)