Visual Basic 6.0 - Большая форма
Re: Большая форма
From: "Igor Kudryashov" <kudriash [@] chat.ru>
Hello, Dmitri!
You wrote on Mon, 24 May 2004 07:40:49 +0000 (UTC):
DD> Теперь собственно вопрос - как все это хозяйство можно "порезать" на
DD> куски с минимальными потерями? Как обеспечить возможность быстрого
DD> переключения между формами, имеющими одинаковый размер, общее меню и
DD> поддерживающими синхронный ресайзинг?
DD> Hадеюсь найдутся бойцы, уже решавшие подобную проблему.
Каждую страницу Tabbed Dialog размести в отдельной форме и подгружай их по
мере необходимости, не забывая выгружать ненужные. Для "привязки" этих
отдельных форм к основной потребуется использовать API функцию SetParrent.
Промежуточные данные, которые на подгружаемых формах, если они нужны после
их закрытия, храни в глобальных переменных.
У меня был опыт создания большого приложения в одном окне, с интерфейсом
похожим на Outlook. Там была куча разных подформ появляющихся в разных
местах по мере надобности. А выглядело всё как одно окно SDI. Все
замечательно работало по технологии, которую я описал.
With best regards, Igor Kudryashov.
* Origin: Radio-MSU NOC, Moscow State University (2:5020/400)
А есть ли способ ?
From: "Youri V. Medvedev" <mdst [@] dci.dalcominfo.ru>
Класс можно декларировать так:
Private WithEvents MyCls As clsMyClass
^^^^^^^^
Можно декларировать и так:
Private MyCls() As clsMyClass
^
А есть ли способ сделать вот такое ?
Private WithEvents MyCls() As clsMyClass
^^^^^^^^ ^
Hужно совместить массив классов с
вожможностью обработки событий.
Hапямую в лоб не получается :(((
* Origin: HOME (2:5020/400)
Commandline _чужого_ приложения
From: Alexander Asyabrik <belmis [@] mail.belpak.by>
Привет, All.
Есть ли у тебя на примете какой-либо доступный способ получить сабж?
--
Alexander
* Origin: Talk.Mail.Ru (2:5020/400)
Как перехватить?
||*()*|| Ах это вы, A ? А я вас не узнал без санитара...
24 май 04 года ты писал(а) к мне:
AB>>>> В этом - спасибо за идею с таймером.
AS>>> А оно точно не оставит в реестре кучу мусора при некорректном
AS>>> завершении?
AB>> Я продумал и это.
AB>> Sub Main начинается с того, что очищает этот параметр, а
AB>> далее в зависимости от того первый или второй экземпляр программы
AB>> запущен
AS> Смотришь по App.PrevInstance? Плохой метод, если копия exe-файла уже
AS> запущена, оно вернёт False. Получится несколько одновременно
AS> работающих первых экземпляров ;-)
Sub Main()
If App.PrevInstance = True Then
SaveSetting "CALIGARI", "COMMON", "OpenIt", Command
End
Else
SaveSetting "CALIGARI", "COMMON", "OpenIt", ""
End If
AB>> обрабатывает коммандную строку или соответственно записывает ее в
AB>> параметр и завершает программу.
AS> Т.е. очищаешь параметр даже без проверки, первый ли это экземпляр?
AS> Плохой метод - если юзер откроет 20 документов за раз (выделит в
AS> Эксплорере и нажмёт Ентер), то ты откроешь только последний.
Хм... Завтра попробую.
I'll be back, A. !
http://www.caligari.zp.ua - реальная психологическая и психиатрическая помощь. Анонимно. Пока бесплатно.
* Origin: Иисус изменил вашу жизнь. Сохранить? [Y/N] (2:4641/500.99)
Re: А есть ли способ ?
Мы где-то виделись, Youri?
26 May 04 10:06:16 в RU.VISUAL.BASIC Youri V. Medvedev -> All:
YVM> Класс можно декларировать так:
YVM> Private WithEvents MyCls As clsMyClass
YVM> ^^^^^^^^
YVM> Можно декларировать и так:
YVM> Private MyCls() As clsMyClass
YVM> ^
YVM> А есть ли способ сделать вот такое ?
YVM> Private WithEvents MyCls() As clsMyClass
YVM> ^^^^^^^^ ^
YVM> Hужно совместить массив классов с
YVM> вожможностью обработки событий.
YVM> Hапямую в лоб не получается :(((
http://mastershome.net.ru/vbfaq/b05.htm
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: Как перехватить?
From: "A. Skrobov" <tyomitch [@] r66.ru>
Hello, Alexander!
You wrote in conference fido7.ru.visual.basic to "A.Skrobov"
<fido7.ru.visual.basic [@] talk.ru>to A. Skrobov on Tue, 25 May 2004 23:01:34
+0400:
AS>> Смотришь по App.PrevInstance? Плохой метод, если копия exe-файла уже
Ключевое слово здесь - "копия"
AS>> запущена, оно вернёт False. Получится несколько одновременно
AS>> работающих первых экземпляров ;-)
AB> Sub Main()
AB> If App.PrevInstance = True Then
AB> SaveSetting "CALIGARI", "COMMON", "OpenIt", Command
AB> End
AB> Else
AB> SaveSetting "CALIGARI", "COMMON", "OpenIt", ""
AB> End If
Скомпилируй, скопируй ехешник под другим именем и запусти оба одновременно.
With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru
--
* Origin: Talk.Mail.Ru (2:5020/400)
pocket pc
AP>>> Тепеpь или пиши на С++ 4.2 в нативе или на VB.NET/C# в менедже.
AP>>> Пpоги на eVB для совместимости вpоде бы идyт, но паpни из MS в
AP>>> своих факах пишyт, что идyт они чеpез ж, так что не говоpите,
AP>>> что вас не пpедyпpеждали.
RY>> Hу, это дело проверится только на практике, в любом случае версия
RY>> для WinCE до wm2003 тоже нужна.
AP> Я же тебе объясняю. Пpогpаммы писанные на .NET идyт на всех PocketPC
AP> c системой WindowsCE3.0 (т.е. на PocketPC2000, PocketPC2002,
AP> PocketPC2003-WM2003).
AP> Т.е. пpактически на всех КПК y котоpых ОС от Микpософт, т.е. КПК с
AP> WindowsCE2.0 и ниже сейчас yже фиг найдешь.
AP> А пpоги написанные на eVB идyт на всех СТАРЫХ КПК, но не идyт, или
AP> идyт коpяво на КПК выпyщенных с пpошлого года и на всех последyющих.
Понятно.
AP> Полyчается, ты специально изyчаешь yстаpевшyю технологию. Это все
AP> pавно, что сейчас выкачать DirectX5.0 и попытаться его yчить, зная,
AP> что начиная с 8-го в нем почти все пеpеделали.
Основная причина, по которой я не использую DirectX - это то, что в VB нет человеческих условий реализации старых DirectX. Такой класс, как Office PC, содержит DirectX 5 для W98, DirectX 7 для Win2000, и не помню какой DirectX для ME.
AP> А может быть ты и латыни фанатик? :)
Hет. Для меня максимальная совместимость - ключевой момент.
AP> Все, больше yбеждать не бyдy. Хочешь yчить eVB, yчи. Я
AP> пpедyпpеждал...
Я уже 140 мб из 210 выкачал. Hе обратно же закачивать. ;)
* Origin: 1134 (2:5045/44.13)
Как перехватить?
||*()*|| Ах это вы, A ? А я вас не узнал без санитара...
24 май 04 года ты писал(а) к мне:
AB>>>> В этом - спасибо за идею с таймером.
AS>>> А оно точно не оставит в реестре кучу мусора при некорректном
AS>>> завершении?
AB>> Я продумал и это.
AB>> Sub Main начинается с того, что очищает этот параметр, а
AB>> далее в зависимости от того первый или второй экземпляр программы
AB>> запущен
AS> Смотришь по App.PrevInstance? Плохой метод, если копия exe-файла уже
AS> запущена, оно вернёт False. Получится несколько одновременно
AS> работающих первых экземпляров ;-)
Sub Main()
If App.PrevInstance = True Then
SaveSetting "CALIGARI", "COMMON", "OpenIt", Command
End
Else
SaveSetting "CALIGARI", "COMMON", "OpenIt", ""
End If
AB>> обрабатывает коммандную строку или соответственно записывает ее в
AB>> параметр и завершает программу.
AS> Т.е. очищаешь параметр даже без проверки, первый ли это экземпляр?
AS> Плохой метод - если юзер откроет 20 документов за раз (выделит в
AS> Эксплорере и нажмёт Ентер), то ты откроешь только последний.
Хм... Завтра попробую.
I'll be back, A. !
http://www.caligari.zp.ua - реальная психологическая и психиатрическая помощь. Анонимно. Пока бесплатно.
* Origin: Иисус изменил вашу жизнь. Сохранить? [Y/N] (2:4641/500.99)
Re: А есть ли способ ?
Мы где-то виделись, Youri?
26 May 04 10:06:16 в RU.VISUAL.BASIC Youri V. Medvedev -> All:
YVM> Класс можно декларировать так:
YVM> Private WithEvents MyCls As clsMyClass
YVM> ^^^^^^^^
YVM> Можно декларировать и так:
YVM> Private MyCls() As clsMyClass
YVM> ^
YVM> А есть ли способ сделать вот такое ?
YVM> Private WithEvents MyCls() As clsMyClass
YVM> ^^^^^^^^ ^
YVM> Hужно совместить массив классов с
YVM> вожможностью обработки событий.
YVM> Hапямую в лоб не получается :(((
http://mastershome.net.ru/vbfaq/b05.htm
Всего хорошего!
Дмитрий Козырев aka Master
* Origin: Дорогу осилит идущий. (2:5023/11.148)
Re: Как перехватить?
From: "A. Skrobov" <tyomitch [@] r66.ru>
Hello, Alexander!
You wrote in conference fido7.ru.visual.basic to "A.Skrobov"
<fido7.ru.visual.basic [@] talk.ru>to A. Skrobov on Tue, 25 May 2004 23:01:34
+0400:
AS>> Смотришь по App.PrevInstance? Плохой метод, если копия exe-файла уже
Ключевое слово здесь - "копия"
AS>> запущена, оно вернёт False. Получится несколько одновременно
AS>> работающих первых экземпляров ;-)
AB> Sub Main()
AB> If App.PrevInstance = True Then
AB> SaveSetting "CALIGARI", "COMMON", "OpenIt", Command
AB> End
AB> Else
AB> SaveSetting "CALIGARI", "COMMON", "OpenIt", ""
AB> End If
Скомпилируй, скопируй ехешник под другим именем и запусти оба одновременно.
With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru
--
* Origin: Talk.Mail.Ru (2:5020/400)