Private frm2 as Form2, frm3 as Form3
Private Sub FormaLoad(...) Handles ...
frm2 = new Form2
frm3 = new Form3
...
End Sub
не надо.AlekseyVB писал(а):
- Код: Выделить всё
Form2.Show
Form2.Hide
Ну это кому что надо.Во-вторых формы не надо никуда загружать, их надо создавать
Дык понятно, просто надо же к какому-то событию прикрутить. Можно к клику, к лостфокусу, да к чему угодно, не суть.ANDLL писал(а):А это frm2 = new Form2 просто создает экземпляр, никакого отношения к Load не имеет.
Но почему-то любой мануал гласит, что использовать стоит именно экземляры классов.ANDLL писал(а):По поводу того, нужно ли создавать экземпляр Form самому, или пользоваться экземпляром одноименным с классом(который ты назвал "прототипом") - кому как нравится. Утверждение "трогать не следует" эмм... Излишне резкое
Эта фраза сама по себе показывает некоторое недопонимание.Но почему-то любой мануал гласит, что использовать стоит именно экземляры классов.
Ась? Автор спросил чем заменить show\hide. Так вот new Form их не заменитДык понятно, просто надо же к какому-то событию прикрутить. Можно к клику, к лостфокусу, да к чему угодно, не суть.
<DebuggerNonUserCode> _
Public Function get_Form1() As Form1
Me.m_Form1 = MyForms.Create__Instance__(Of Form1)(Me.m_Form1)
Return Me.m_Form1
End Function
Как бы когда говорят "A" это экземпляр то конечно же не имеют ввиду что это экземпляр. Важно понимать что экземпляр класса это "вещь в себе". Какаято переменная может ссылаться на некий экземпляр, но быть экземпляром не может. В этом смысле приведенный тобой код лично мне не наводит на мысли.Также может навести на мысли, что Form2 - это никакой не экземляр,
Выделенное словосочетание смысла не имеет. Что подразумевалось под ней?Если мы зададим свойство экземляру-класса-Form2 то, вот удивительно, сам класс Form2 отреагирует на это изменение:
ANDLL писал(а):Если вопрос стоит - как загрузить форму, в смысле создать ее описатели и заставить построить дерево(то есть если вопрос - какой аналог Load из VB6) то это делает метод CreateControl
Dmitriy2003 писал(а):wfa1
wfa1.rar
Module Module1
Public a As Integer
End Module
Public Class Form2
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
a = 10
End Sub
End Class
Public Class Form1
Public frm2 As Form2
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
frm2 = New Form2
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MsgBox(a)
End Sub
End Class
AlekseyVB писал(а):[code]
AlekseyVB писал(а):1. что бы приложение быстро работало (быстрый переход от форме к форме).
2. при запуске приложения необходимо что бы выполнялся код (который находится не в стартовой форме) на проверку определенных условий
Работать оно и так будет быстро, никаких взмахов волшебной палочки не надо. Тормоза могут быть только из-за перегруженности обработчиков события Load.1. что бы приложение быстро работало (быстрый переход от форме к форме).
Денис писал(а):Но даже не зная шарпа я разглядел, что формы 1,2,3 - одинаковы. Тогда зачем нам три класса?
AlekseyVB писал(а):У меня не открывается( пользуюсь vb2005 express
Я бы тут сбавил ход... А m_Form1 как объявлена?вот таком кодом
Public m_Form1 As Form1
Чтож прикажете - уважаемый каждый фаил из проекта пооддельности выкладывать , скачайте лучше WinRar - если лень - коротко - можно играть со свойством Opacity формы.
AlekseyVB писал(а):WinRar то есть))) при открытии файла *.sln выдает ошибку и указывает что необходима более поздняя версия программы))
Нет, это просто глобальная переменная, которая, кстати, доступна как My.MyProject.Forms.m_Form1, хотя и не видима из-за интересных аттрибутов класса:ANDLL писал(а):И атрибутов нет?
<MyGroupCollection("System.Windows.Forms.Form", "Create__Instance__", "Dispose__Instance__", "My.MyProject.Forms"), EditorBrowsable(EditorBrowsableState.Never)> _
Friend NotInheritable Class MyForms
О чем я и говорил в самом начале...ANDLL писал(а):В некотором сложном приближении лучше все таки использовать именно свои переменные, а не вот эти.
AlekseyVB писал(а):Необходимо при запуске первой формы программы загрузить в память все остальные формы.
Если ли другой способ загрузки форм в память без отображения?
Form2.Show
Dim frm2 as Form2, frm2 = New Form2
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2