powered by simpleCommunicator - 2.0.54     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / комбобокс по феншую
25 сообщений из 58, страница 1 из 3
комбобокс по феншую
    #37495498
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
цель: при щелчке на ячейку таблицы должен открыться комбобокс. я могу сделать так, что при нажатии на таблицу появляется комбобокс, при втором нажатии на стрелочку комбобокс открывается. но это очень муторно. нужно, чтобы хватало одного щелчка на ячейку. заранее спс
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37495700
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
SendMessage MyCombobox.hWnd, CB_SHOWDROPDOWN,  1 ,  0 
надеюсь, что объявление функции и константы ты сможешь найти сам
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37495980
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

спасибо... только я немного не догнал... первый клики проходит норм. комбобокс появляется в нужном месте, открывается, но на второй клик таблица не реагирует, просто комбобокс снова теряет фокус и сворачивается. перемещается только после второго клика. в чём дело? пытался сначала закрыть - от этого ничего не меняется. пытался передать фокус другому элементу - тогда комбобокс вооообще не двигается с места... воть...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub MSFlexGrid1_Click()
SendMessage Combo1.hwnd, CB_SHOWDROPDOWN,  0 ,  0 
Combo1.Visible = True
Combo1.Left = MSFlexGrid1.Left +  3400 
Combo1.Top = MSFlexGrid1.Top + (MSFlexGrid1.RowSel) * MSFlexGrid1.RowHeight( 0 )
SendMessage Combo1.hwnd, CB_SHOWDROPDOWN,  1 ,  0 
Combo1.SetFocus
end sub
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37496198
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не очень понял, в чем проблема

попробуй сначала поставить фокус, а потом раскрывать
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37496210
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

если запустить приведённый выше код, 1 раз комбобокс появится в нужном месте и откроется. нажать на другую ячейку - ничего не произойдёт. придётся нажать 2 раза. мнее кажется, это как-то связано с фокусом... завтра буду думать на свежую голову
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37496214
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
лень делать тестовый проект - сделай, выложи, посмотрю

кстати, обрати внимание на существование свойств CellLeft, CellTop, CellWidth и CellHeight
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497039
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Option Explicit
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, _
    ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
    Private Const CB_SHOWDROPDOWN As Long = &H14F

Private Sub Form_Load()
MSFlexGrid1.Rows =  10 
MSFlexGrid1.Cols =  10 
End Sub

Private Sub MSFlexGrid1_Click()
SendMessage Combo1.hwnd, CB_SHOWDROPDOWN,  0 ,  0 
Combo1.Visible = True
Combo1.Left = MSFlexGrid1.Left +  200 
Combo1.Top = MSFlexGrid1.Top + (MSFlexGrid1.RowSel) * MSFlexGrid1.RowHeight( 0 )
SendMessage Combo1.hwnd, CB_SHOWDROPDOWN,  1 ,  0 
Combo1.SetFocus
End Sub
при этом получается вот такая фигня.....----->>>
p/s CellLeft, CellTop, CellWidth и CellHeight - что за свойства? свойства чего?
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497114
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я ведь сказал, что мне лень делать тестовый проект самому. По-моему это тебе надо, а не мне. Выложишь проект - посмотрю.
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497136
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

не очень понимаю... это не сойдёт? ктрл С ктрл V... вот и весь проект. ну +мсгрид и момбобокс на форме
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497183
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда я давал тебе примеры с контролами, я почему-то не ленился выкладывать проекты, ты почему-то предпочитаешь дискутировать. Лично для тебя - нет, не сойдет.
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497215
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497241
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если не игнорировать мои советы, все работает корректно.

Мля, нафига я отвечаю????
Нафига вопросы задаются, если ответы не интересуют?
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497262
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

каким советам? поставить фокус, а потом открывать? не помогает
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497308
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда начнем с того, что ты не написал, чего именно ты хочешь добиться.
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497340
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

мсгрид. столбик мсгрида. при нажатии на любую ячейку из этого столбика появляется на месте ячейки комбобокс и открывается. ***блаблабла промежуточные нужды*** при нажатии на другой ячейке комбобокс сворачивается и появляется в новом месте, открывается. но на деле не получается. закрытый комбобокс перемещается норм, а открытый нет. вручную перед перемещением
Код: plaintext
SendMessage Combo1.hwnd, CB_SHOWDROPDOWN,  0 ,  0 
не помогает
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497347
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
он не может быть открытый при перемещении. у него своя очередь сообщений срабатывает и он всегда свернёт список
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497359
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

тогда в чём проблема?)) поч не перемещается так, как текстбокс?... код тот же, всё то же самое... p/s перемещается норм, если вырезать строчку с открытием
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497363
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сначала закрыть (завершить событие), потом перемещать
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497381
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

т.е.? какое событие? закрыть комбобокс - не вариант. пробовал , даже под таймером.
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497390
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
надо выполнить событие CLICK по элементу открытого списка
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497401
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В общем-то Костя прав.

Открой любое диалоговое окно (да хоть бы свойство проекта), разверни любой комбобокс, затем попробуй нажать любую кнопку или открыть другой комбобокс и т.п. С первого раза у тебя не выйдет - это нормальное поведение развернутого комбобокса.

Можно, конечно, исхитриться.....

А еще подумай, если комбобокс тебе не нужен для ввода текста, а только для выбора из списка, используй вместо него листбокс.
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497433
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_One,

имитировать при помощи клика левой кнопки мыши по выделенному элементу открытого комбобокса? или как-то более цивилизованно?

Shocker.Pro,

какое объявление для листбокса?
Код: plaintext
SendMessage MyCombobox.hWnd, CB_SHOWDROPDOWN,  1 ,  0 
как и
Код: plaintext
SendMessage MyCombobox.hWnd, LB_SHOWDROPDOWN,  1 ,  0 
наверняка уже не проканает...
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497448
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну-ну. А для текстбокса у тебя какое объявление?
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497458
Фотография BelowZero
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shocker.Pro,

неправильно выразился... но уверен, что ты и так понял) нуно событие для развёртывания... разворачивания... открытия листбокса(имитация нажатия на стрелочку)
...
Рейтинг: 0 / 0
комбобокс по феншую
    #37497466
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я тебе задал вполне конкретный вопрос.
Если ты перефразировал, то и я перефразирую.

Какое событие ты используешь для текстбокса для "развёртывания... разворачивания... открытия текстбокса(имитация нажатия на стрелочку)"?
Спрашиваю потому, что ты сказал, что у тебя текстбокс не вызывает вопросов.
...
Рейтинг: 0 / 0
25 сообщений из 58, страница 1 из 3
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / комбобокс по феншую
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]