vba textbox аксес -> формы

Программирование на Visual Basic for Applications
bosti
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 20.06.2008 (Пт) 6:05

vba textbox аксес -> формы

Сообщение bosti » 20.06.2008 (Пт) 6:16

вопрос по аксесу...
есть форма. в ней есть текст бокс заданных размеров
в нее помещается текст из базы данных.

и текст намного больше формы
как зделать чтобы текст бокс принимал нужные размеры.. то есть автоматически устанавливалась высота...

подскажите пожалуйста (=

HandKot
Бывалый
Бывалый
Аватара пользователя
 
Сообщения: 283
Зарегистрирован: 28.06.2006 (Ср) 13:34
Откуда: Sergiev Posad

Сообщение HandKot » 20.06.2008 (Пт) 6:55

может просто включить у него полосы проктуртки?
св-во - "полосы прокрутки"
I Have Nine Lives You Have One Only
THINK!

bosti
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 20.06.2008 (Пт) 6:05

Сообщение bosti » 20.06.2008 (Пт) 7:19

да не надо полосу прокрутки надо что бы размер менялся... с полосой прокрутки то понятно включил и мотаешь..
нада размер менять

SLIM
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1840
Зарегистрирован: 04.04.2008 (Пт) 18:21
Откуда: Краснодар

Сообщение SLIM » 20.06.2008 (Пт) 21:50

Тут начерное проще алгоритм применить. Посмотреть размер одного символа (Примерно). Вычислить его ширину. После помещения текста в текстбокс узнать сколько символов, и соответственно расширять координаты текстбокса
Пишите жизнь на чистовик.....переписать не удастся.....

AndreyG_80
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 169
Зарегистрирован: 10.03.2006 (Пт) 13:27

Сообщение AndreyG_80 » 20.06.2008 (Пт) 22:14

можно сделать по корявому. сначала помещать текст в метку, у нее есть свойство изменять размер под текст, потом просто у текстбох делать такой же размер как и у метки...

bosti
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 20.06.2008 (Пт) 6:05

Сообщение bosti » 23.06.2008 (Пн) 4:23

хм.. просто в режиме вывода на печать текст полностью появляется.. ни чего не надо расширять..
а в режиме редактирования с полосой прокрутки.. можно ли как то вычислить размеры до вывода на печать и поставить их в режим редактирования?

bosti
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 20.06.2008 (Пт) 6:05

Сообщение bosti » 25.06.2008 (Ср) 4:52

ни кто не знает чтоль?
возможно ли такое вообще реализовать?
автосайз не пашет на текст бокс?

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 25.06.2008 (Ср) 7:44

bosti
Поскольку других вариантов не появилось, юзай вариант AndreyG_80
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

bosti
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 20.06.2008 (Пт) 6:05

Сообщение bosti » 25.06.2008 (Ср) 11:34

как в метку добавлять текст из бд?

добовлять ее сначала в текстбокс оттуда копировать и заносить в метку через вба? или не правильный ход мыслей

bosti
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 20.06.2008 (Пт) 6:05

Сообщение bosti » 26.06.2008 (Чт) 11:21

Код: Выделить всё
Private Sub label_Click()
Set db = CurrentDb
Dim korr As Recordset
Set korr = db.OpenRecordset("blank")
label.Caption = Recordset.Fields("posled")
End Sub


ошибку выдает слишком большое значение для данного семейства?
символов там слишком много видимо..
другие поля нормально выводит.
а то которое надо выводить не хочет

AndreyG_80
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 169
Зарегистрирован: 10.03.2006 (Пт) 13:27

Сообщение AndreyG_80 » 26.06.2008 (Чт) 16:15

bosti писал(а):как в метку добавлять текст из бд?

добовлять ее сначала в текстбокс оттуда копировать и заносить в метку через вба? или не правильный ход мыслей


не помню, давно вба не пользовал, но почти так-же как и в текст-бох.

AndreyG_80
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 169
Зарегистрирован: 10.03.2006 (Пт) 13:27

Сообщение AndreyG_80 » 26.06.2008 (Чт) 16:20

bosti писал(а):
Код: Выделить всё
Private Sub label_Click()
Set db = CurrentDb
Dim korr As Recordset
Set korr = db.OpenRecordset("blank")
label.Caption = Recordset.Fields("posled")
End Sub


ошибку выдает слишком большое значение для данного семейства?
символов там слишком много видимо..
другие поля нормально выводит.
а то которое надо выводить не хочет


если там слишком много символов, как же ты техт-бох так растянеш???
тогда прийдетса и форму растягивать, а потом если на екран не влезет - монитор прийдетса растягивать ;)

а вобще какая максимальная длина этого поля в таблицэ?
может лучше текст-бох сразу сделать больших размеров, чтоб туда все влазило.....

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Сообщение Денис » 27.06.2008 (Пт) 10:13

bosti
Я бы на вашем месте сделал поле с вручную меняющимся размером, типа сплиттера. Снизу, справа и правый нижний угол. Как реализовать - ищите по форуму - вариантов - куча.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

bosti
Начинающий
Начинающий
 
Сообщения: 10
Зарегистрирован: 20.06.2008 (Пт) 6:05

Сообщение bosti » 27.06.2008 (Пт) 10:13

а вобще какая максимальная длина этого поля в таблицэ?
может лучше текст-бох сразу сделать больших размеров, чтоб туда все влазило.....

ну в аксесе стоит тип "поле мемо" то есть там до 65к сиволов... но их там столько не будет..
просто в странице с боку будет появляться полоса прокрутки что впринципе допустимо...


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 55

    TopList