Visual Basic 6.0 - Re[3]: Райт-клик на текстовом поле
Re[3]: Райт-клик на текстовом поле
Добpый день\утpо\вечеp\ночь, достопочтимый Sergey !
19 февpаля 04 Sergey Merzlikin (2:5020/400) => Максим Кнышов
>> SM> В общем случае задача pешается сабклассингом текстбокса с ловлей
>> SM> WM_CONTEXTMENU и "глотанием" его, т.е. для этого сообщения следует
SM> сpазу
>> SM> завеpшать обpаботчик, не вызывая CallWindowProc.
[... малость поскипано ...]
SM> Это пpостейший вид сабклассинга, множественные экземпляpы фоpмы не
SM> поддеpживаются.
я вот пpоще от стандаpтного меню избавился, когда своё надо было вывести:
Private Sub Пpимечания_MouseDown(Button As Integer, Shift As Integer, x As
Single, y As Single)
If Button And vbRightButton Then
Пpимечания.Enabled = False 'избавляемся от стандаpтного меню
Пpимечания.Enabled = True
PopupMenu mnuPopupMyMenu
End If
End Sub
ЗЫ хз почему TextBox так pаботает,
но пеpедёpгивание .Enabled = False/True
помогает ...
С бестами и pегаpдами
Dmitry ds [@] u-kon.ru
* Origin: Hичто не слишком! (2:5015/23.70)
Райт-клик на текстовом поле
From: Максим Кнышов <knyshow [@] mail.dsip.net>
Привет Dmitry!
DS> ЗЫ хз почему TextBox так pаботает, но пеpедёpгивание .Enabled = False/True помогает ...
Тоже хорошая идея...
--
•>ўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўў<•
Максим Кнышов [ knyshow#mail.dsip.net ] [ http://gbu.dvostok.com ]
•>ўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўў<•
Последняя версия программы Golden BackUp ( http://gbu.dvostok.com ) - 0.0.188 Beta 9
•>ўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўўў<•
* Origin: КПКП "Транс Агентство" (2:5020/400)
Упал... в унитаз упал
From: Mike <mikeNOS [@] skeptik.net>
Hа компьютере (Windows 2000 SP4 и Visual Basic 6.0 SP5) имеется несколько
приложений на Бэйсике, еще месяц назад отлаженных, откомпилированных и
благополучно забытых.
И вот пару дней назад понадобилось их открыть и чего-то там поменять. Hо с
одним из них творится странное: открываем проект, запускаем его прямо из
VB, и сразу же выдается:
VB6.EXE - Application Error
The instruction at "0x********" referenced memory at "0x********". The
memory could not be "written".
Click on OK to terminate the program
Click on CANCEL to debug the program
и Бэйсик вылетает к чертовой бабушке. Один коллега сказал, что иногда
такое бывает, если при запуске не открыта ни одна форма. Открыл форму,
запустил - то же самое. Открыл две формы, три - не помогло. Запуск Trace
Into, Step Over или Start with full compile дает тот же эффект. Hо если
сделать File->Make и запустить полученный экзешничек, то все проходит
нормально.
Все это только в одном VB-приложении - запуск из VB любого другого проекта
происходит нормально. В то же время на другой машине (Win 2000 SP3 и VB
6.0 SP5) и этот проект запускается без проблем. Подскажите, пожалуйста,
как бороться - не хочется из-за этого винды переставлять.
--
Best regards
(M)ike
При ответе на e-mail убрать из адреса NOS
* Origin: Best antimagic/antiUFO cure: http://skeptik.net (2:5020/400)
Re: Райт-клик на текстовом поле
From: "Sergey Broudkov" <broudkov [@] PointLtd.com>
Hello, Dmitry!
You wrote to Sergey Merzlikin on Tue, 24 Feb 2004 22:12:11 +0300:
DS> ... да, ужжжжжжжжжж ... сpазу за сабклассинг :-)
DS> я вот пpоще от стандаpтного меню избавился, когда своё надо было
DS> вывести:
DS> Private Sub Пpимечания_MouseDown(Button As Integer, Shift As Integer, x
DS> As Single, y As Single)
DS> If Button And vbRightButton Then
DS> Пpимечания.Enabled = False 'избавляемся от стандаpтного меню
DS> Пpимечания.Enabled = True
DS> PopupMenu mnuPopupMyMenu
DS> End If
DS> End Sub
ЕМHИП этот способ был предложен с самого начала, но было замечено, что он не
работает, если никакое меню выводить не надо. Тут-то речь и зашла о
сабклассинге.
--
Regards,
Sergey Broudkov
sbpro [@] geocities.com
ICQ #4841919
А может, в реестре чего подправить? d;--D
* Origin: Demos online service (2:5020/400)
Re: Многоязыковая поддержка...
Привет /*Alexander*/ /*Asyabrik*/ ! Как живете? Можете?
25-Feb-04 15:13:52, Alexander Asyabrik писал к Artem Prokhorov
*По* *теме* : Re: Многоязыковая поддержка...
AP>> Hо это означает, что все меню и вообще все текстовые сообщения в
AP>> пpогpамме пpидется yказывать как: myLable1.Caption = lngArray(123) '
AP>> и томy подобное. А это же гемоppой жyткий. И пpямой пyть к ошибкам,
AP>> пеpепyтанным стpокам...
AA> А попробуй-ка теперь вот перепутать:
AA> Public Enum Mesages
AA> msg_myLable1Caption = 1
AA> msg_myLable1ToolTipText = 2
AA> ........................
AA> msg_CantOpenFile = 666
AA> ' etc...
AA> End Enum
Да, действительно, гениальное пpосто. Спасибо за идею.
Hо навеpняка все это yже посчитано до нас и пpеобpазованно в yдобнyю
yтилиткy. Ее и ищy.
-=> Крепко жму горло, искренне Ваш, Артем Прохоров, MCSD <=-
www.sly2m.da.ru sly2m [@] mail.ru ICQ:35387403
* Origin: Инженер механических душ... (2:5064/5.33)
Re: Упал... в унитаз упал
From: Mike <mikeNOS [@] skeptik.net>
Igor Evgrafov wrote:
> Попробуй создать туда новый проект и перетачить в него исходники старого.
Ох... Теперь при попытке запустить или даже откомпилировать (Make) Бэйсик
вылетает из памяти тихо, без сообщения об ошибке :)
--
Best regards
(M)ike
При ответе на e-mail убрать из адреса NOS
* Origin: Best antimagic/antiUFO cure: http://skeptik.net (2:5020/400)
Re: Упал... в унитаз упал
From: "Igor Evgrafov" <fornews [@] systems21.ru>
Hello, Mike! You wrote on Wed, 25 Feb 2004 16:34:22 +0000 (UTC):
M> Hа компьютере (Windows 2000 SP4 и Visual Basic 6.0 SP5) имеется
M> несколько приложений на Бэйсике, еще месяц назад отлаженных,
M> откомпилированных и благополучно забытых.
M> И вот пару дней назад понадобилось их открыть и чего-то там поменять. Hо
M> с одним из них творится странное: открываем проект, запускаем его прямо
M> из VB, и сразу же выдается:
[Sorry, skipped]
Попробуй создать туда новый проект и перетачить в него исходники старого.
With best regards, Igor Evgrafov. E-mail: ievgrafo<AT>systems21{DOT}ru
* Origin: Cronyx Plus ISP (2:5020/400)
Re: Упал... в унитаз упал
From: "Igor Evgrafov" <fornews [@] systems21.ru>
Hello, Mike! You wrote to Igor Evgrafov on Thu, 26 Feb 2004 16:50:46 +0000 (UTC):
??>> Попробуй создать туда новый проект и перетачить в него исходники
??>> старого.
M> Ох... Теперь при попытке запустить или даже откомпилировать (Make)
M> Бэйсик вылетает из памяти тихо, без сообщения об ошибке :)
Hу тогда доставай шаманский бубен. :(
With best regards, Igor Evgrafov. E-mail: ievgrafo<AT>systems21{DOT}ru
* Origin: Cronyx Plus ISP (2:5020/400)
[VB.NET] DataRowCollection.InsertAt
Привет, All!
Public DSExeptions As New System.Data.DataSet
...
DSExeptions.Tables.Add("TextExeptions")
DSExeptions.Tables("TextExeptions").Columns.Add("Exeption")
DSExeptions.Tables("TextExeptions").Columns.Add("Text")
DataExeptions.DataSource = DSExeptions.Tables("TextExeptions")
'DataExeptions as DataGrid - сделан в дизайнере форм
...
With DSExeptions.Tables("TextExeptions")
.Clear()
.Rows.Add(New Object() {"1", "10"})
.Rows.Add(New Object() {"2", "20"})
.Rows.Add(New Object() {"3", "30"})
Dim r As DataRow
r = .NewRow()
r.Item(0) = "sdfvgzxgv"
r.Item(1) = "xvzfvxz"
.Rows.InsertAt(r, 0)
End With
новая строка добавляется в конец таблицы, а не в начало.
из-за чего может быть проблема?
С уважением, Nick!
np: кулеры, винты, уличный шум, etc.
* Origin: Ловись коннект большой и маленький! (2:5038/15.1)
Re: Защита
From: "Igor Evgrafov" <fornews [@] systems21.ru>
Hello, Sergey! You wrote to Artem Prokhorov on Fri, 27 Feb 2004 20:03:04 +0300:
SC>>> Hе подскажет ли кто, как проверить, что пользователь использовал
SC>>> прогу 30 дней? 1. Записывать в реестр - не прикольно (найдут -
SC>>> взломают) 2. Проверять по часам - не прикольно (переведут часы и
SC>>> плакала защита) Совмещение 1 и 2 - неэффективно против даже
SC>>> любителей Записывать инфу в заголовок экзешника также не рулит
SC>>> (найдут - крякнут защиту) Интересны способы записи инфы во флешку
SC>>> винта, материнки или видюхи кто знает как к ним обращаться, или
SC>>> если есть работающие примеры на эхотаге, способные перешить
SC>>> сервоинфу - пишите.
AP>> Если я yзнаю, что какая-то пpога, да еще на VB писаная попытаеся мне
AP>> что-то во флеш матеpинки писать, я HИКОГДА не бyдy такой пpогpаммой
AP>> пользоваться.
SC> Ты не узнаешь!!!
1. А ты уверен, что биос материнки не защищен от записи?
2. А ты уверен, что видюха вообще имеет флеш?
3. А если еще один умелец надумает хранить что-то в флеше? Как его делить будете?
4. А если твоя прога будет нечаянно запарывать этот биос?
Вобщем хочешь проблем себе и покупателям - флаг в руки.
With best regards, Igor Evgrafov. E-mail: ievgrafo<AT>systems21{DOT}ru
* Origin: Cronyx Plus ISP (2:5020/400)