Фокус при инициализации формы

Программирование на Visual Basic for Applications
Ципихович Эндрю
Обычный пользователь
Обычный пользователь
 
Сообщения: 56
Зарегистрирован: 07.04.2010 (Ср) 17:19

Фокус при инициализации формы

Сообщение Ципихович Эндрю » 02.05.2011 (Пн) 10:33

Здравствуйте
1. форму с именем ... запускаю в модальном режиме, в документе Ворд, форма не обычная, файл прикрепляю. Как фокус, курсор иметь в текст боксе

2. если открыл форму в модальном режиме, можно сделать её немодальной и наоборот, если да то как???
Спасибо
Вложения
Пример добавляет иконку в заголовок формы.rar
(127.67 Кб) Скачиваний: 135

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Фокус при инициализации формы

Сообщение alibek » 02.05.2011 (Пн) 13:27

1. Бред.
2. Нельзя.
Lasciate ogni speranza, voi ch'entrate.

Ципихович Эндрю
Обычный пользователь
Обычный пользователь
 
Сообщения: 56
Зарегистрирован: 07.04.2010 (Ср) 17:19

Re: Фокус при инициализации формы

Сообщение Ципихович Эндрю » 02.05.2011 (Пн) 13:32

1 для кого бред, а для кого манна небесная, по другому она мне и даром не нужна, тем не менее можно курсором управлять?
2 понял спасибо

anvg
Обычный пользователь
Обычный пользователь
 
Сообщения: 66
Зарегистрирован: 20.05.2007 (Вс) 18:04

Re: Фокус при инициализации формы

Сообщение anvg » 03.05.2011 (Вт) 3:51

Почему нельзя? Две кнопки на форму с кодом
Код: Выделить всё
Private Sub btModal_Click()
    Me.Hide
    Me.Show vbModal
End Sub

Private Sub btUnmodal_Click()
    Me.Hide
    Me.Show vbModeless
End Sub

Димитрий
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 194
Зарегистрирован: 26.01.2005 (Ср) 22:47
Откуда: Волгоград

Re: Фокус при инициализации формы

Сообщение Димитрий » 03.05.2011 (Вт) 8:13

1. перемещайте фокус после инициализации
Код: Выделить всё
Private Sub UserForm_Activate()
    TextBox1.SetFocus
End Sub

Ципихович Эндрю
Обычный пользователь
Обычный пользователь
 
Сообщения: 56
Зарегистрирован: 07.04.2010 (Ср) 17:19

Re: Фокус при инициализации формы

Сообщение Ципихович Эндрю » 03.05.2011 (Вт) 15:21

а Вы видели мой код, в аккурат, то что Вы предлагаете там есть:
Код: Выделить всё
Private Sub UserForm_Initialize()

  Dim lngFrmHndl As Long, lngStyle As Long
  lngFrmHndl = FindWindow(vbNullString, Me.Caption)
  'задать стиль
  'Or WS_MAXIMIZEBOX - появление на форме кнопки "Свернуть в окно"
  lngStyle = GetWindowLong(lngFrmHndl, GWL_STYLE) Or WS_SYSMENU Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX
  'установить стиль
  SetWindowLong lngFrmHndl, GWL_STYLE, lngStyle
  'относится к деактивации кнопки "Закрыть" - крестик в углу формы
  'DeleteMenu GetSystemMenu(lngFrmHndl, 0&), SC_CLOSE, 0&
  'фокус при появлении формы будет на ...
[u] Me.TextBox1.SetFocus[/u]
 
End Sub

Ципихович Эндрю
Обычный пользователь
Обычный пользователь
 
Сообщения: 56
Зарегистрирован: 07.04.2010 (Ср) 17:19

Re: Фокус при инициализации формы

Сообщение Ципихович Эндрю » 03.05.2011 (Вт) 15:23

anvg - cпасибо за код

Димитрий
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 194
Зарегистрирован: 26.01.2005 (Ср) 22:47
Откуда: Волгоград

Re: Фокус при инициализации формы

Сообщение Димитрий » 04.05.2011 (Ср) 7:27

а Вы видели мой код, в аккурат, то что я написал у вас нет :D :drunken:
Private Sub UserForm_Activate()

Ципихович Эндрю
Обычный пользователь
Обычный пользователь
 
Сообщения: 56
Зарегистрирован: 07.04.2010 (Ср) 17:19

Re: Фокус при инициализации формы

Сообщение Ципихович Эндрю » 05.05.2011 (Чт) 19:00

Как избавиться от средней кнопки, из тех трёх которые в углу формы
подскажите как сколько не пробовал или 0 или 1 или 3 кноки ну 2 никак


Заменил Лабел на РичТекстБокс, он более мне нравится в отношении с ТекстБоксом
написал процедуру активации и фокус при появлении формы находится в РичТекстБоксе
ОК!!!
после нажатия любой клавиши в обработчике пишу, чтобы фокус был в РичТекстБоксе
и курсор встаёт в крайнее левое положение в РичТекстБоксе
а как указать, чтобы он вставал следом за последним введённым знаком???

и ещё после сорачивания и затем разворачивания формы фокус теряется, как его заиметь, что писать понятно, как процедуру назвать???
Спасибо


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 30

    TopList