LEADERSOFT.ru Разработка на заказ программ и сайтов
Форумы по информационным технологиям
 
Регистрация  |  Вход
left
Форумы Минимизировать
ПоискСписок форумов
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: Прорисовк...
 Тема: Прорисовка TreeView, ListView
 
 15.06.2007 21:02:06
Vasya
26 сообщения


Тема: Прорисовка TreeView, ListView
Возникла такая проблема при размещении элементов ListView, TreeView на наюборе вкладок. Пока LV или TV находится на активной вкладке - изменение их элементов проходит нормально. Но если добавление или изменение элементов происходило когда LV или TV находились на неактивной вкладке - добавленные или измененные элементы не прорисовываются. Repaint не помогает. В чем проблема?



P.S. Объект TreeView
Автор: Vasya от 05.03.2002 15:08:13 Источник ...
 15.06.2007 21:02:06
All
4316 сообщения
1-ый


RE: Прорисовка TreeView, ListView
1. Обязательно сделайте подчиненную форму и разместите там элемент TreeView.
2. Только после этого вставьте подчиненную форму в набор вкладок.


P.S. Объект TreeView
Автор: Виктор Конюков от 0:00:00 Источник ...
 15.06.2007 21:02:06
Vasya
26 сообщения


RE: Прорисовка TreeView, ListView
Ура!!! Работает!!! Я этот вопрос поднимал на трех форумах, только здесь дали ответ.


P.S. Объект TreeView
Автор: Vasya от 05.03.2002 16:39:17 Источник ...
 15.06.2007 21:02:06
Николай3
48 сообщения


RE: Прорисовка TreeView, ListView
Может быть не совсем точно удалось воспроизвести.
Так, при использовании набора вкладок от Access и TreeView (ListView) от MSComctlLib - при добавлении элементов получалось следующее:
Если была открыта вкладка с TreeView (ListView), то все нормально.
Если вкладка с TreeView (ListView) была неактивна, то потом, при переключении на эту вкладку контролы TreeView (ListView) сначала отображались в левом верхнем углу формы, причем без добавленных элементов. Достаточно было провесто сдвинуть границу формы, чтобы все перерисовалось как положено.

Удалось решить таким способом:

1. контролы TreeView (ListView) изначально устанавливаются в Visible=False
2. при загрузке формы, устанавливается свойство Visible=True у элемента, находящегося на вкладке, открываемой по умолчанию (если на вкладке с индексом 0 нет TreeView (ListView), то этот шаг не нужен)
3. в процедуру НаборВкладок5_Change() добавляется код:

Private Sub НаборВкладок5_Change()
DoCmd.Echo False
If Me.НаборВкладок5.Value <> 1 Then Me.Tree1.Visible = False
If Me.НаборВкладок5.Value = 1 Then Me.Tree1.Visible = True
If Me.НаборВкладок5.Value <> 2 Then Me.ListV1.Visible = False
If Me.НаборВкладок5.Value = 2 Then Me.ListV1.Visible = True
DoCmd.Echo True
End Sub

Смысл кода - сначала отключить обновление экрана, затем установить Visible=True нужному элементу, чтобы он прорисовался своими методами (естественно при этом обновляется) и "погасить" другие, затем включить обновление экрана.



P.S. Объект TreeView
Автор: Николай от 06.03.2002 5:40:19 Источник ...
 15.06.2007 21:02:06
Денис
2 сообщения


TreeView
как реализовать отображение древовидной структуры в Access 97?


P.S. Объект TreeView
Автор: Денис от 04.09.2002 11:07:54 Источник ...
  Программирование  Microsoft Access. Файлы mdb и accdb  Тема: Прорисовк...
ПоискПоиск  Список форумовСписок форумов  
right