REM
1

Проверка "загружена форма или нет" ?

22.04.2007, 13:11. Показов 2944. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
HIHI FRDS !

Подскажите, пожалуйста, как сделать проверку занружена форма или нет. Например, имеем проект с двумя формами. При старте загружается Form1.
Form2 загружается при нажатии Form1.Button1
При нажатии Form1.Button2 надо проверить, загружена Form2 или нет.

Заранее благодарен за ответ и вашу помощь.

Regards,
Andy.
romul@mail.lv
www.forexnet.lv
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2007, 13:11
Ответы с готовыми решениями:

Проверка: загружена форма или нет?
Как узнать загружена (Form2) или нет?

Как узнать загружена форма или нет?
Как узнать загружена форма или нет? Спасибо.

Как узнать загружена нужная форма или нет?
Проект с MDIForm. Дочерние формы распологаются в определённом порядке в зависимости от уже...

Указать для каждого вопроса проценты ответов "да", "нет", "не знаю"
Здравствуйте господа программисты и сисадмины.Помогите пожалуйста начинающему с решением следующей...

5
3 / 3 / 0
Регистрация: 15.03.2007
Сообщений: 63
22.04.2007, 14:15 2
From MSDN:

A Forms collection is a collection whose elements represent each loaded form in an application. The collection includes the application'sMDI form,MDI child forms, and non-MDI forms. The Forms collection has a single property, Count, that specifies the number of elements in the collection.

0
ComeRun
22.04.2007, 14:33 3
? Screen.ActiveForm.Name
Form2

Удачи...
VladK
23.04.2007, 07:24 4
Посади на форму 2 кнопки и текстовое поле.
1-я кнопка плодит нумерованные формы.
2-я кнопка проверяет, загружена ли К-я форма.
Число К вводи в текстовое поле.

Option Explicit

Private Sub Command1_Click()
Dim form2 As Form
Static i As Integer
If i = 0 Then i = 1
i = i + 1

Set form2 = New Form1
With form2
.Caption = 'Form ' & i
.Command1.Visible = False
.Command2.Visible = False
.Text1.Visible = False
.Show
End With
Form1.ZOrder


End Sub

Private Sub Command2_Click()
Dim myForm As Form

For Each myForm In Forms
If myForm.Caption = 'Form ' & Text1.Text Then
MsgBox 'Form ' & Text1.Text & ' Loaded'
Exit Sub
End If
Next myForm
MsgBox 'Form ' & Text1.Text & ' Not Loaded'
End Sub

Private Sub Form_Load()
Text1 = vbNullString
Me.Caption = 'Form 1'
End Sub

Mavr
23.04.2007, 14:50 5
ArtP правильно написал, необходимо смотреть коллекцию Forms. Коллекция Forms содержит все загруженные формы. Форма может быть и невидима, но если она будет загружена, то она попадет в колекцию Forms.
Метод ActiveForm объекта Screen возвращает активную в данный момент форму, т.е. форму на которой находится фокус, поэтому в данном случае этот метод не подходит. Вот простенькая функция, которая возвращает истину, если форма загружена (в качестве параметра FormName ей передается имя формы в проекте VB, не Caption):

Function IsLoadedForm (FormName As String) As Boolean
Dim i
IsLoadedForm = False
For i = 0 To Forms.count - 1
If Forms(i).Name = FormName Then
IsLoadedForm = True
Exit Function
End If
Next
End Function
1 / 1 / 0
Регистрация: 19.03.2007
Сообщений: 123
23.04.2007, 14:58 6
Проверка существования формы по заголовку, если формы нет создает новую копию, если есть - активизирует. У меня работает по клику в меню, в качестве заголовка формы используется название пункта меню.
' m000(index) - пункт меню
mnuCapt1 = m000(Index).Caption
xx = 0
For i = 1 To Forms.Count - 1
If Forms(i).Caption = mnuCapt1 Then
Forms(i).SetFocus
Forms(i).WindowState = 0
xx = i
End If
Next
If xx = 0 Then
Set fGrup = New frmGrup
fGrup.Caption = mnuCapt1
fGrup.Width = 8070
fGrup.Height = 6555
Load fGrup
fGrup.Show
End If
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2007, 14:58
Помогаю со студенческими работами здесь

Указать для каждого вопроса проценты ответов "да", "нет", "не знаю"
В двухмерном массиве размером nхm хранятся результаты опроса n человек на m вопросов.Ответами на...

Как преобразовать рисунок из "png" в "bmp" или в "jpg"?
Есть программка, которая ставит обои рабочего стола на выбор пользователя, она может поставить...

Как зделать так ,что бы в "менюстрип" при нажатии на вклаку появлялась другая "форма"
Как зделать так ,что бы в "менюстрип" при нажатии на вклаку появлялась другая "форма"

Что такое "Модуль" и "Форма" и чем они отличаются
Вот в этой теме: https://www.cyberforum.ru/visual-basic/thread629680.html в самом низу раптор дал...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru