Послать текст контролу

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
step
Бывалый
Бывалый
 
Сообщения: 217
Зарегистрирован: 03.08.2004 (Вт) 16:19

Послать текст контролу

Сообщение step » 30.03.2005 (Ср) 13:07

Есть контрол, на нём есть текст бокс, как при нажатии на кнопку, расположенную на форме, чего-нить писалось в текстбоксе, расположенном на контроле ?

Шурик
Самогонщик
Самогонщик
Аватара пользователя
 
Сообщения: 1657
Зарегистрирован: 30.06.2003 (Пн) 13:27
Откуда: из запоя :))))) Матных сообщений: 972

Сообщение Шурик » 30.03.2005 (Ср) 13:17

Так и пиши:
Код: Выделить всё
Private Sub Command1_Click()
    Text1.Text = "TEST"
End Sub

или я чета не понял :?

RayShade
Scarmarked
Scarmarked
Аватара пользователя
 
Сообщения: 5511
Зарегистрирован: 02.12.2002 (Пн) 17:11
Откуда: Russia, Saint-Petersburg

Сообщение RayShade » 30.03.2005 (Ср) 13:20

Не понял :) У него бокс не на форме а на контроле :)

Шурик
Самогонщик
Самогонщик
Аватара пользователя
 
Сообщения: 1657
Зарегистрирован: 30.06.2003 (Пн) 13:27
Откуда: из запоя :))))) Матных сообщений: 972

Сообщение Шурик » 30.03.2005 (Ср) 13:22

Блин, сорри :oops:
Не то...

Морфий
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 119
Зарегистрирован: 11.01.2005 (Вт) 18:06

Сообщение Морфий » 30.03.2005 (Ср) 14:01

step
А у тебя есть исходник этого контрола?
Если есть, то создаешь в контроле новое свойство, например, text, и потом на форме пишешь:
Код: Выделить всё
Private Sub Command1_Click()
    YourControl.Text = "TEST"
End Sub
Вот оно — счастье...

step
Бывалый
Бывалый
 
Сообщения: 217
Зарегистрирован: 03.08.2004 (Вт) 16:19

Сообщение step » 30.03.2005 (Ср) 14:10

Вот:

На контроле:
Код: Выделить всё
Public Property Get textbox()
Set textbox = UserControl.Text1
End Property


На форме:
Код: Выделить всё
Private Sub Command1_Click()
UserControl11.textbox = "TEKCT"
End Sub


Всем огромное спасибо!

Arcanoid
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 162
Зарегистрирован: 01.01.2005 (Сб) 15:44

Re: Послать текст контролу

Сообщение Arcanoid » 30.03.2005 (Ср) 14:21

step писал(а):Есть контрол, на нём есть текст бокс, как при нажатии на кнопку, расположенную на форме, чего-нить писалось в текстбоксе, расположенном на контроле ?

Найти в контроле окно текстбокса через GetWindow() и вызвать SetWindowText() ))))))))

step
Бывалый
Бывалый
 
Сообщения: 217
Зарегистрирован: 03.08.2004 (Вт) 16:19

Сообщение step » 30.03.2005 (Ср) 15:09

А ещё, если в контроле стоит линия, как изменить её координаты из формы? Т.е.
Код: Выделить всё
Public Property Get textbox() as ТУТ ЧЁ ПИСАТЬ
Set textbox = UserControl.line1
End Property

Arcanoid
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 162
Зарегистрирован: 01.01.2005 (Сб) 15:44

Сообщение Arcanoid » 30.03.2005 (Ср) 20:39

Лайн ?!

Qubicz
Обычный пользователь
Обычный пользователь
 
Сообщения: 87
Зарегистрирован: 16.10.2004 (Сб) 20:21
Откуда: Санкт-Петербург

Сообщение Qubicz » 30.03.2005 (Ср) 21:56

UserControl.line1.X1
UserControl.line1.Y1
UserControl.line1.X2
UserControl.line1.X2
?

step
Бывалый
Бывалый
 
Сообщения: 217
Зарегистрирован: 03.08.2004 (Вт) 16:19

Сообщение step » 31.03.2005 (Чт) 12:16

Повторяю вопрос ещё раз:
Есть контрол, на котором есть линия, этот контрол расположен на форме и на форме стоит кнопка, при нажатии на которую координаты линии, стоящей на конроле, который стоит на форме, изменялись.
Как это сделать?

uhm
Продвинутый гуру
Продвинутый гуру
Аватара пользователя
 
Сообщения: 1597
Зарегистрирован: 02.12.2004 (Чт) 15:21

Сообщение uhm » 31.03.2005 (Чт) 12:35

...в доме, который построил Джек...

У контрола либо задаешь public properties с координатами линии и изменяешь их при нажатии кнопочки, либо (что лучше) задаешь метод, который получает 4 параметра - координаты и по ним перерисовывает линию.

step
Бывалый
Бывалый
 
Сообщения: 217
Зарегистрирован: 03.08.2004 (Вт) 16:19

Сообщение step » 31.03.2005 (Чт) 12:53

uhm писал(а):...в доме, который построил Джек...

У контрола либо задаешь public properties с координатами линии и изменяешь их при нажатии кнопочки, либо (что лучше) задаешь метод, который получает 4 параметра - координаты и по ним перерисовывает линию.


Можно пример, или код?

Arcanoid
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 162
Зарегистрирован: 01.01.2005 (Сб) 15:44

Сообщение Arcanoid » 31.03.2005 (Чт) 15:16

Код: Выделить всё
Public Sub ChangeLine(byval X1 as long, byval Y1 as long, byval X2 as long, byval Y2 as long)
   UserControl.Line1.X1 = X1
   UserControl.Line1.Y1 = Y1
   UserControl.Line1.X2 = X2
   UserControl.Line1.Y2 = Y2
end sub

-------

public Sub CommandButton_Click()
   TvojKonrolVForme.ChangeLine(100,200,300,400)
end sub

step
Бывалый
Бывалый
 
Сообщения: 217
Зарегистрирован: 03.08.2004 (Вт) 16:19

Сообщение step » 31.03.2005 (Чт) 18:55

Arcanoid
Спачиб тебе, это то, что я искал!

Tarik
Агент Системы
Агент Системы
Аватара пользователя
 
Сообщения: 1222
Зарегистрирован: 03.01.2003 (Пт) 16:05
Откуда: Москва

Сообщение Tarik » 31.03.2005 (Чт) 20:46

А ещё в качестве параметра можно добавить clLine as Object, тогда процедура вообще универсальная будет... :roll:
Изображение

Ever tried? Ever failed? No matter. Try again! Fail again! Fail better!


Вернуться в Visual Basic 1–6

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

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

    TopList