Злой админ удалил мои ответы в форуме. Посмотрите может поможет Нород помогите придумать алгоритм Do АЛГОРИТМ Loop Until АЛГОРИТМ: Длжен находить пробелы (KeyAscii = 32) в тексте и возвратить из количество + 1 --------------------------------- 'Вот тебе алгоритм Private Sub Form_Click() Dim BeginNull As Boolean BeginNull = True Text1.Text = " Нород помогите придумать алгоритм " SearchChar = " " MyPos = 1 Do Until MyPos = 0 If BeginNull Then BeginNull = Not BeginNull: MyPos = 0 MyPos = InStr(MyPos + 1, Text1.Text, SearchChar, 1) If MyPos > 0 Then NumSpc = NumSpc + 1 Loop 'Показывает количество пробелов и проверку Split'oм MsgBox NumSpc, , UBound(Split(Text1.Text, " ")) End Sub ========================================= Товарищи! Помогите! Нужно открыть тхт файл например 2мб, но открывать его порциями по 100кб с интервалом 5 сек Как это сделать! --------------------------------- ' Модуль формы Private EnumRecs Private New5Sec ' Событие клик формы Private Sub Form_Click() EnumRecs = 0 New5Sec = Time Timer1.Interval = 10 End Sub ' Событие таймер таймера Private Sub Timer1_Timer() Me.Caption = Time & "_" & New5Sec If New5Sec <= Time Then Dim CurRecPos As Long Next100k$ = String(100000, " ") CurRecPos = (100000 * EnumRecs) + 1 Open "c:\system.1st" For Binary As #1 Get #1, CurRecPos, Next100k$ Close 1 EnumRecs = EnumRecs + 1 Debug.Print CurRecPos cls 'Отображает на форме первую 1000 символов прочитаннного куска Print Left(Next100k$, 1000) New5Sec = DateAdd("s", 5, Time) End If End Sub ========================================= Может для кого он покажится дурацким но: Как в ВБ сделать менюшку на правую кнопку? -------------------------------- Private Declare Function CreatePopupMenu Lib "user32" () As Long Private Declare Function AppendMenu Lib "user32" Alias "AppendMenuA" (ByVal hMenu As Long, ByVal wFlags As Long, ByVal wIDNewItem As Long, ByVal lpNewItem As Any) As Long Private Declare Function DestroyMenu Lib "user32" (ByVal hMenu As Long) As Long Private Declare Function TrackPopupMenu Lib "user32" (ByVal hMenu As Long, ByVal wFlags As Long, ByVal X As Long, ByVal Y As Long, ByVal nReserved As Long, ByVal hwnd As Long, lprc As Any) As Long Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long Private Type POINTAPI X As Long Y As Long End Type Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button And 2 Then Dim Pos As POINTAPI Dim NewMenu As Long, NewAction As Long NewMenu = CreatePopupMenu GetCursorPos Pos AppendMenu NewMenu, 0, 1, "Пункт &1" AppendMenu NewMenu, 0, 2, "Пункт &2" AppendMenu NewMenu, &H800, 0, vbNull AppendMenu NewMenu, 0, 3, "Пункт &3" NewAction = TrackPopupMenu(NewMenu, 2 Or &H100, Pos.X, Pos.Y, 0, hwnd, 0) If NewAction = 1 Then SubName = "Один" If NewAction = 2 Then SubName = "Два" If NewAction = 3 Then SubName = "Три" If NewAction > 0 Then MsgBox "Нажат пункт номер " & SubName DestroyMenu NewMenu End If End Sub ========================================= У меня сегодня День Варенья,Помогите мне ,сделайте подарок,please. Скажите как в ComboBox'е сделать чтобы было автозаполнение т.е. по первым буквам выскакивал лист с похожими вариантами... Может это и легко,но я новичек,помогите советом... Заранее всем благодарен. ------------------------ Очень удобно, когда при вводе первых букв слова в текстбокс, в листбоксе, в котором находятся некие слова, выделяется слово, содержащее эти буквы. Пример: хелп в виндах и т.п. Так вот - давайте это сделаем (тем более, что это очень просто). Создаем форму, на нее натягиваем Text1 и List1. Размещаем текстбокс ровненько над листбоксом (можно еще и что-то сделать для большей красоты). И пишем код: Private Declare Function SendMessage Lib "User32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Integer, ByVal wParam As String, lParam As Any) As Long Const LB_FINDSTRING = &H18F Private Sub Form_Load() With List1 .Clear .AddItem "Yellow Submarine" .AddItem "Sgt. Peppers Lonely Hearts Club Band" .AddItem "Imagine" .AddItem "Instant Karma" .AddItem "Girll" .AddItem "Mind Games" .AddItem "Hey Jude" .AddItem "Yesterday" End With End Sub Private Sub Text1_Change() List1.ListIndex = SendMessage(List1.hWnd, LB_FINDSTRING, Text1, Text1.Text) End Sub Вот и все. Это довольно известный способ. Но если кто - то не знает :)). Примечание. Вместо text1.text можно подставить combo1.text
Ответить
|