Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Список с мультиселектом
 
 автор: Дядя Федор   (30.08.2011 в 14:40)   личное сообщение
 
 

в зависимости от Regim надо сделать список с мультивыбором или без, однако
такая вот конструкция выдает ошибку
-Невозможно присвоить значение объекту

Select Case Regim
    Case 1: 'Выбор одного
     Me.ListVakans.MultiSelect = 0
    Case 2: ' Выбор нескольких
     Me.ListVakans.MultiSelect = 1
End Select


А вот что говорит ХЕЛП
To set the MultiSelect property, you can use the following:
Forms("Order Entry").Controls("Country").MultiSelect = 2 ' Extended.

Из другой формы пробовал (до открытия и после открытия), тоже не катит.

Подскажет кто-нибудь? В чем дело?

  Ответить  
 
 автор: Силblч   (30.08.2011 в 14:49)   личное сообщение
 
 

а чего не сразу так?

     Me.ListVakans.MultiSelect = Regim-1



This property can be set only in form Design view.


  Ответить  
 
 автор: Анатолий (Киев)   (30.08.2011 в 14:58)   личное сообщение
 
 

"с мультивыбором или без" - элементы разного класса. Изменить это свойство можно изменить только в режиме конструктора (как, например, и св-во "Всплывающая" формы).
Сделайте "с мультивыбором" и, при необходимости, после выделения 2-й строки снимайте выделение с предыдущей.

  Ответить  
 
 автор: Дядя Федор   (30.08.2011 в 15:02)   личное сообщение
 
 

Да, я уже сделал

Public Function OpenFrmGruppsVakans(Regim As Byte)
 On Error GoTo err1
 DoCmd.OpenForm "FrmGruppsVakans", acDesign
 Forms("FrmGruppsVakans").Controls("ListVakans").MultiSelect = Regim
 DoCmd.Close acForm, "FrmGruppsVakans", acSaveYes
 DoCmd.OpenForm "FrmGruppsVakans", , , , , acDialog
 
 Exit Function
err1:
 Debug.Print err.Description, err.Number
 
End Function

Public Sub AAAtst()
OpenFrmGruppsVakans (1)

End Sub

Спасибо.

  Ответить  
 
 автор: Explorer   (30.08.2011 в 17:40)   личное сообщение
 
 

а два разных конторола - два разных списка (один видимый другой нет) это не кошерно?

  Ответить  
 
 автор: Гоблин   (30.08.2011 в 18:42)   личное сообщение
 
 

Блин. А я только так и делал, а программно даже не задумывался. Так что считаю, что кошерно.

  Ответить  
 
 автор: Дядя Федор   (31.08.2011 в 08:01)   личное сообщение
 
 

Рассматривал этот вариант. Но решил, что не гуд. Т.к. он зависит от другого списка. Лишние связи неохота задавать.

  Ответить  
 
 автор: Explorer   (31.08.2011 в 11:07)   личное сообщение
 
 

ну да, ну да... а вот так, конечно, лучше :)


DoCmd.OpenForm "FrmGruppsVakans", acDesign

  Ответить  
 
 автор: Дядя Федор   (31.08.2011 в 12:39)   личное сообщение
 
 

А ЧЁЁ?

  Ответить  
 
 автор: Explorer   (31.08.2011 в 18:08)   личное сообщение
 
 

в дизайн моде пользовательскую форму открывать?

в общем-то можно, конечно...

  Ответить  
 
 автор: Силblч   (31.08.2011 в 18:10)   личное сообщение
 
 

ещё и скрыто
мы так юзали... даже в коммерческих продуктах :)) никто не жаловался

  Ответить  
 
 автор: Lukas   (31.08.2011 в 21:16)   личное сообщение
 
 


никто не жаловался


Ага-ага. Вам пожалуйся.
Кому охота словить 165 кг. в пятак?

  Ответить  
 
 автор: Гоблин   (31.08.2011 в 18:53)   личное сообщение
 
 

И что это означает. Открыть форму "....", в каком режиме? acDesign. Что дает в итоге.

  Ответить  
 
 автор: Дядя Федор   (31.08.2011 в 19:01)   личное сообщение
 
 

Собственно решает поставленную задачу.
acDesign - открыть в режиме конструктора.
Затем меняем нужное свойство(которое нельзя изменить НЕ В Конструкторе).
Смотри код выше.
И все.

  Ответить  
 
 автор: Lukas   (31.08.2011 в 21:14)   личное сообщение
 
 


Но решил, что не гуд. Т.к. он зависит от другого списка.


Очень даже гуд.
Всяко лучше открывания формы в конструкторе, тем паче, что в mde такое не прокатит.
Нужно просто сделать грамотно:
Два списка и одна доморощенная типизированная переменная, в которой ссылка на нужный в данный момент список.
Все отловы событий и прочие "завязки" делать не на сами списки, а на типизированную переменную.
И фсио. :)

  Ответить  
 
 автор: Дядя Федор   (01.09.2011 в 08:14)   личное сообщение
 
 

В общем-то, я согласен.

У меня есть такие формы. Где поле со списком или список используются таким образом.

Вопрос, собственно, возник при попытке изменить свойство мультиселект.
И есче. Время открытия формы зависит от источников данных списков. Чем их больше, тем заметнее, особенно в сети. Это еще одна причина, почему задумался об одном списке.
Хотя, конечно, можно цеплять данные по мере надобности...
Короче, всем спасибо.

  Ответить  
 
 автор: Explorer   (01.09.2011 в 10:26)   личное сообщение
 
 

>>> Хотя, конечно, можно цеплять данные по мере надобности...

дык

  Ответить  
 
 автор: Силblч   (01.09.2011 в 11:14)   личное сообщение
 
 

вообще определил (для себя)
что достаточно двух основных контролов для реализации практически любой интерфейсной задачи: FlexGrid и RichTextEdit :)

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList