Обсуждение программирования на Visual Basic в конференции ru.visual.basic
Re: динамическое созд а ние |
Мы где-то виделись, Gennady? 11 Oct 03 21:40:09 в RU.VISUAL.BASIC Gennady Tarada -> All: DK>> Dim l As Label DK>> Set l = Controls.Add("VB.Label", "Label2") DK>> With l DK>> .Move 0, 0, 60, 16 DK>> .Caption = "Лейбл 2" DK>> .Visible = True DK>> End With GT> а как события обрабатывать? GT> Private Sub Label2_Click() GT> Print "Hello!" GT> End Sub GT> ^^^^ не работает Область описания: Private WithEvents Label2 As Label Ивент: Private Sub Label2_Click() Любое место: :) Set Label2 = Controls.Add(...) ну и далее по тексту. Если объектов может быть создано неограничено много, и от всех надо ловить ивенты - тоже есть решение, но я предоставляю право рассказать о нем Андрею Федорову, так как эту идею услышал от него. Всего хорошего! Дмитрий Козырев aka Master * Origin: Дорогу осилит идущий. (2:5023/11.148) |
Re: Защита программ |
From: "Igor Evgrafov" Hello, Roman! You wrote to Igor Evgrafov on Fri, 10 Oct 2003 11:02:23 +0400: IE>>>> Более того я не видел на VB ни одной шаровары, даже IE>>>> поганенькой... Дело впрочем хозяйское... RY>>> http://attackie.com/obg.php ;) [Sorry, skipped] IE>> Хочется чтоб на некоторые неправильные ответы прога гнусно IE>> прикалывалась :) RY> А насчет ответов - могу поделиться исходниками, только у меня винт RY> умирал, насколько они старые - не знаю. Сделаем СП. ;) Я тут лет 12 игру Жизнь пишу. Сначала на focal, потом Pascal, потом VB, потом VС++, теперь вот на C# корячусь %) Есть еще мысля сделать ее распределенной. Она у меня в качестве подопытного кролика, как появляется желание язык какой освоить или технологию - я пишу Жизнь %) А утром на работу и опять ERP, кастомеры, суплайеры и прочие инвойсы... RY> А вы говорите - нет, нет. ;) Я говорил не видел. Если уж совсем точно то я имел ввиду то, что для шаровар VB как то слабо подходит. Оно же конструктор типа Лего. Пока детальки есть подходящие все хорошо, а как надо необычную детальку - имеешь секс стоя в гамаке на лыжах... А если проект вздумал расти то тут уже совсем труба - тушите свет, сливайте воду. - --- With best regards, Igor Evgrafov. * Origin: Cronyx Plus ISP (2:5020/400) |
Byte Array(Variant) and API (Part 2) |
From: Alexander Asyabrik Привет, Master. Уверен я был, что этот вопрос закрыт, но не тут-то было. Hапомню: была нужна функция, которая, получая массив байт внутри переменной типа вариант, получала указатель непосредственно на массив внутри варианта и передавала его в АПИ функцию для записи в файл. Что с вашей помощью и было успешно реализовано. И тут гром с ясного неба: пользователю потребовалось передавать массив не внутри варианта, а объявленный как () As Byte, что я, дурень, в спешке и не удосужился проверить. А оно, блин, вылетает вместе с VB :( Получается вот что: моя функция спокойно принимает в аргумент, объявленный As Variant, этот массив, но этот аргумент внутри функции ведет себя и не так, как переменная Variant, и не так как 'чистый' байтовый массив. В частности для полученного аргумента не удается получить указатель на pvData структуры SAFEARRAY (возвращается всегда 0). Попытка записи в файл, используя классическую передачу в АПИ функцию первого байта массива, тоже укладывает VB на лопатки:( И что здесь, на самом деле, представляет из себя аргумент внутри функции? Я не въезжаю, чес слово... Может, что подскажешь в обход проблемы? Как в этом случае получить указатель на массив? -- С уважением, Alexander * Origin: Talk.Mail.Ru (2:5020/400) |
Re: Byte Array(Variant) and API (Part 2) |
From: "A. Skrobov" Hello, Alexander! You wrote in conference fido7.ru.visual.basic to "All" AA> Получается вот что: моя функция спокойно принимает в аргумент, AA> объявленный As Variant, этот массив, но этот аргумент внутри AA> функции ведет себя и не так, как переменная Variant, и не так как AA> 'чистый' байтовый массив. В частности для полученного аргумента не AA> удается получить указатель на pvData структуры SAFEARRAY AA> (возвращается всегда 0). Попытка записи в файл, используя AA> классическую передачу в АПИ функцию первого байта массива, тоже AA> укладывает VB на лопатки:( И что здесь, на самом деле, представляет AA> из себя аргумент внутри функции? Я не въезжаю, чес слово... В этом случае третий DWORD варианта указывает не на SAFEARRAY, а как раз на первый байт массива. Как различать эти два случая, сам догадаешься, или подсказать? With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru -- * Origin: Talk.Mail.Ru (2:5020/400) |
астраиваемая панель инструментов |
Привет всем ! А где можно найти эти контролы, описание к ним и кряки: DataDynamics ActiveBar Sherridan Toolbar А еще, кто знает где достать ActiveX для использования в программе прилипающих (dockable) окон. Hапример как в самом VB. У меня есть причем неплохой Dockable Pro 2: окошки прилипаются в точности как в VB, но только у меня trial version, а крак я найти нигде не смог. Спасибо за внимание. * Origin: WinPoint 95 is a girls best friend! (2:5059/28.35) |
Векторный графический редактор |
Hello ! У кого-нибудь есть тутор или пример сабжа, или где сие можно найти (URL) Особенно интересует как сделать прокрутку области рисования и векторное увеличение/уменьшение. PS: Все процедуры рисования и проч должны быть реализованы с помощью API функций, а иначе тормозной редактор получится ;) Bye ! * Origin: WinPoint 95 is a girls best friend! (2:5059/28.35) |
Re: астраиваемая панель инструментов |
Мы где-то виделись, Andrey? 12 Oct 03 14:14:56 в RU.VISUAL.BASIC Andrey Shmelev -> All: AS> А где можно найти эти контролы, описание к ним и кряки: AS> DataDynamics ActiveBar www.datadynamics.com astalavista.box.sk (кряк) AS> А еще, кто знает где достать ActiveX для использования в программе AS> прилипающих (dockable) окон. Hапример как в самом VB. Тот же DataDynamics. Просмотри все его семплы. Всего хорошего! Дмитрий Козырев aka Master * Origin: Дорогу осилит идущий. (2:5023/11.148) |
Re: Byte Array(Variant) and API (Part 2) |
Мы где-то виделись, Alexander? 13 Oct 03 01:32:54 в RU.VISUAL.BASIC Alexander Asyabrik -> All: AA> И тут гром с ясного неба: пользователю потребовалось передавать AA> массив не внутри варианта, а объявленный как () As Byte, что я, AA> дурень, в спешке и не удосужился проверить. А оно, блин, вылетает AA> вместе с VB :( Hе понимаю, ты ведь скриптовый компонент пишешь? А разве там есть Byte? Или, если это компонент для программ на чистом VB, то тогда почему не получается принять аргумент как () As Byte? В общем, пример кода надо бы. Всего хорошего! Дмитрий Козырев aka Master * Origin: Дорогу осилит идущий. (2:5023/11.148) |
Re: Byte Array(Variant) and API (Part 2) |
Мы где-то виделись, A.? 13 Oct 03 06:43:18 в RU.VISUAL.BASIC A. Skrobov -> Alexander Asyabrik: AS> В этом случае третий DWORD варианта указывает не на SAFEARRAY, а как раз AS> на первый байт массива. Как различать эти два случая, сам догадаешься, или AS> подсказать? Я что-то не нашел соотстветствующее значение vt. Hаиболее близко к нему VT_ARRAY (но это первый случай) и VT_BYREF (но он только для одной переменной). Всего хорошего! Дмитрий Козырев aka Master * Origin: Дорогу осилит идущий. (2:5023/11.148) |
Re: Byte Array(Variant) and API (Part 2) |
From: "A. Skrobov" Hello, Dmitriy! You wrote in conference fido7.ru.visual.basic to "A.Skrobov" 08:23:42 +0400: AS>> В этом случае третий DWORD варианта указывает не на SAFEARRAY, а как раз AS>> на первый байт массива. Как различать эти два случая, сам догадаешься, AS>> или подсказать? DK> Я что-то не нашел соотстветствующее значение vt. Hаиболее близко к нему DK> VT_ARRAY (но это первый случай) и VT_BYREF (но он только для одной DK> переменной). Именно он, VT_BYREF + VT_UI1 (8209) With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru -- * Origin: Talk.Mail.Ru (2:5020/400) |