Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Spirit

ActiveX Control: Form1.Show bvModal if(Form1.Text1.Text <> '') then UserControl.Text2.Text = Form1.Text1.Text

29.07.2009, 16:45. Показов 2299. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Имеется проект ActiveX Control, в нем: Form1(имеет Text1, Button1), UserControl1 (имеет Text2, Button2). По нажатию на Button2 открывается Form1, вводиться текст в Text1 и по нажатию на Button1 должна закрываться Form1 и значение из Text1 передать в Text2. Как это сделать? Дело в том, что из формы не видно поля, находящегося в UserControl1.

Обидно, проект полностью готов, а посчитанное значение не могу вернуть.
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.07.2009, 16:45
Ответы с готовыми решениями:

Проблема с WInsock'ом Winsock1.GetData Data, vbString Text1.Text = Text1.Text & Data
Получаю данные так: Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long) Dim Data As String Winsock1.GetData Data, vbString ...

Text1.Text = CommonDialog1.FileTitle
Dopustim ja cherez Common Dialog zapisal v TextBox put' faila. A kak uznat' proso imia faila?

Text1.Text = "" не очищает Text1
Пример из учебника. Обычное считывание текстового файла. Автор демонстрирует выполнение одного и того же действия двумя различающимися...

10
Silver
29.07.2009, 18:19
Имеется проект ActiveX Control, в нем: Form1(имеет Text1, Button1), UserControl1 (имеет Text2, Button2). По нажатию на Button2 открывается Form1, вводиться текст в Text1 и по нажатию на Button1 должна закрываться Form1 и значение из Text1 передать в Text2. Как это сделать? Дело в том, что из формы не видно поля, находящегося в UserControl1.

Попробуй смотреть с другой стороны, со стороны
UserControl.

Типа...
Visual Basic
1
2
Form1.Show bvModal
if(Form1.Text1.Text <> '') then UserControl.Text2.Text = Form1.Text1.Text
Spirit
29.07.2009, 18:32
Со стороны UserControla я тоже смотрел. Т.к. vbModal не подходит, необходимо, чтобы UserControl отследил момент закрытия формы. Как я понимаю, для этого ему надо послать какое-то (например, свое) сообщение. И по приходу его обрабатывать контроле. Тогда возникает вопрос: как я могу объявить свое сообщение и послать его UserControl'у?
Silver
29.07.2009, 18:46
Трудно отслеживать сообщения в двух топиках))
Давай уж в чем-то одном общаться.
2 / 2 / 1
Регистрация: 19.07.2007
Сообщений: 737
29.07.2009, 18:52
Все можно проще реализовать.
Создай в форме два свойства:
Visual Basic
1
2
3
4
...
Public UnloadState as boolean
Public ReturnValue as String
...
В форме на нажатие Button1 напиши следующее:
Visual Basic
1
2
3
4
5
..
ReturnValue=Text1.Text
UnloadState=True
Unload Me
..
Добавь метод в свой ActiveX
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Friend Sub OpenForm()
Dim frm as Form1
 
   Set frm=New Form1
   frm.Show vbModal, Me
   if frm.UnloadState then
      'это твой параметр
      debug.print frm.ReturnValue
   end if
   Set frm=Nothing
 
End Sub
Удачи
0
Spirit
29.07.2009, 19:14
to Konst_one: не хотелось бы использовать vbModal, тогда что?
Silver
30.07.2009, 11:07
Хорошо, принимаем, что vbModal использовать нельзя.
Будем думать дальше...
Spirit
30.07.2009, 11:17
To Silver: пусть обсуждение будет в топике.
Silver
30.07.2009, 12:08
------- код UserControl ----------
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Option Explicit
Private WithEvents frm As Form1
 
Private Sub Command1_Click()
 Set frm = New Form1
 
  frm.Show
End Sub
 
Private Sub frm_CloseForm()
  MsgBox 'Close Form'
End Sub
------ код Form1 -----------------
Visual Basic
1
2
3
4
5
6
7
Option Explicit
 
Public Event CloseForm()
 
Private Sub Command1_Click()
  RaiseEvent CloseForm
End Sub
В приведенном примере UserControl получает
сообщение о нажатии кнопки в форме без
использования модального диалога.
Это то, что хотелось?
Spirit
30.07.2009, 12:15
Сейчас попробую.
Spirit
30.07.2009, 12:32
Да, то что хотелось. Спасибо.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.07.2009, 12:32
Помогаю со студенческими работами здесь

Как создать массив? (i = len(text1.text) Dim q(i))
Как создать массив? i = len(text1.text) Dim q(i) - ОЩИБКА объясните почему, как избежать этого???

как сделать что бы 22 числа каждого месяца в text1.text прибавлялось 1?
как сделать что бы 22 числа каждого месяца в text1.text прибавлялось 1? по сути программа переходила на новый месяц? то есть 22.07.13...

Чем отличается Load Form1 от Form1.Visible = true?
ToolBox размещена на основной форме (Form1). На MouseDown подвешено открытие формы Form2 (Form2.Show vbModal), после закрытия которой...

Ошибка user.exe в коде: Private Sub Text1_Change() If Text1.Text = 'del' Then Unload Me End If End Sub
Подскажите, плз. Почему происходит ошибка Windows, User.exe выполнила недопустимую операцию и будет закрыта....при следующем коде: ...

Inet.Execute Text1.Text, "HEAD" и ошибка 'Unable to complete request' runtime error 35756
Inet.Execute Text1.Text, 'HEAD' ' в &lt;Text1.Text&gt; хттп адрес вот кусок кода который берет из инета сведения о файле.....примерно...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью в конфигурации КА2. Данные берутся из регистра сведений, по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru