|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Проблема такая : с одной программой работают разные пользователи. У всех - свои предпочтения. Многие dw построены по типу grid , т.е. можно менять порядок колонок , их ширину. Как сохранить сделанные пользователем изменения в визуальном представлении dw , чтобы потом их можно было "активировать" при следующем запуске программы? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 14:40 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Что-то типа того: Код: plaintext 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 14:59 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Список всех объектов - Describe("Datawindow.Objects") У каждой колонки есть .X .Width и .Visible Порядок можно определить отсортировав по .X Или раскрутив DataWindow.Table.GridColumns в массив. Применить параметры - отключили отрисовку, выставили всем .Visible=0 В нужном порядке выставляем каждой visible и выставляем ширину и делаем SetPosition(column,'',True) /* это bringToFront на самом деле */ 2 Марк: метод грубой силы не всегда подходит. Что будет с этим сохраненным синтаксисом, если я добавляю, удаляю, перекрашиваю и т.п. колонки в dw??? Каждый раз при апгрейде выносить настройки пользователя? Ну тогда это никакого смысла не имеет - у меня они и недели не пролежат ;-) От инженеров Sybase насколько я помню Вы требовали гораздо более тщательного подхода к разработке ;-) ;-) ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 15:07 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Спасибо за совет. Я в раздумьях , ведь есть еще GetFullState/SetFullState. Что лучше использовать : Datawindow.Syntax или вышеуказанные функции ? И еще : может , можно напрямую "подменять" определения dw в pbd? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 15:10 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Еще раз намекаю: как насчет несовместимости "сохраненного" синтаксиса и измененных версий DW? сомневаюсь что grid рисуется раз и навсегда и больше изменениям не подлежит. PBD имхо - не вариант. Зачем придумывать себе приключения, когда можно обойтись стандартными Describe/Modify? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 15:23 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
ВовикЯ в раздумьях , ведь есть еще GetFullState/SetFullState. Что лучше использовать : Datawindow.Syntax или вышеуказанные функции ? Если просто сохранить/восстановить, то лучше вышеуказанные функции. GuestЧто будет с этим сохраненным синтаксисом, если я добавляю, удаляю, перекрашиваю и т.п. колонки в dw??? Каждый раз при апгрейде выносить настройки пользователя? Ну тогда это никакого смысла не имеет - у меня они и недели не пролежат ;-) Что-то вы слишком часто меняете свои DataWindow. Удалять настройки все-же будет необходимо только у тех DataWindow, которые поменялись. GuestОт инженеров Sybase насколько я помню Вы требовали гораздо более тщательного подхода к разработке ;-) ;-) Я почему-то подумал, что спрашивают как быстрее запомнить, а не как лучше. А так, ваш метод более верный, и даже более того, именно его я и использую :) . А еще, при таком подходе, можно свойства прямо из программы менять, а не в DataWindow Painter'е (если написать немного кода). Полезно бывает. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 15:28 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Еще раз спасибо. Склоняюсь к варианту Describe/Modify. Я только не совсем понял, Describe("Datawindow.Objects") выдает все объекты со всеми их свойствами? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 15:28 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Локшин МаркА еще, при таком подходе, можно свойства прямо из программы менять, а не в DataWindow Painter'е (если написать немного кода). Полезно бывает. А нельзя поподробнее , когда это может быть полезно? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 15:33 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
ВовикЯ только не совсем понял, Describe("Datawindow.Objects") выдает все объекты со всеми их свойствами? Нет, это только список наименований разделенный символом табуляции. ВовикА нельзя поподробнее , когда это может быть полезно? Ну, допустим, если кто-то хочет видеть зеленые заголовки, а кто-то синие. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 15:38 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Так все же вопрос : куда оптимальнее сохранять настойки 1) в отдельный файл на диске 2) в pbd 3) в базу ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 15:47 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
авторТак все же вопрос : куда оптимальнее сохранять настойки 1) в отдельный файл на диске 2) в pbd 3) в базу Я делалю так: сохраняю все в базу, но у меня имеется возможность загрузить/выгрузить эти настройки в файл (чтобы можно было передавать, при необходимости, между филиалами). Зато при сохранении в базу они никуда не денутся. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 16:08 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Такое размышление у меня возникло : можно ли как-то сравнить определение dw в pbd и текущее состояние dw у пользователя на экране , чтобы за один раз получить Modify - строку , которую нужно сохранить в качестве настроек ? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.02.2004, 17:12 |
|
Как лучше запомнить текущие настройки DW ?
|
|||
---|---|---|---|
#18+
Всем выражаю огромную благодарность. Вот , сделал работающий вариант ( с PFC ) . Настройки GRID сохраняются в Ini-файл пользователя. Функция сохранения настроек ( вызывается из Destructor ) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50.
Функция восстановления настроек ( вызывается из Constructor ) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89.
... |
|||
:
Нравится:
Не нравится:
|
|||
01.03.2004, 15:53 |
|
|
start [/forum/topic.php?fid=15&fpage=108&tid=1339273]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
63ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
others: | 11ms |
total: | 158ms |
0 / 0 |