0 / 0 / 0
Регистрация: 27.11.2007
Сообщений: 60

Фиксированная колонка в MSFlexGrid

19.09.2008, 10:48. Показов 1432. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте... Такая странная штука. Есть фиксированная колонка в MSFlexGrid. Мне нужно по нажатию мыши на одну из ячеек этой колонки обработать событие... Но почему-то индекс этой колонки не выдаётся - а выдаётся индекс первой НЕфиксированной колонки... В чём дело ? Как это обойти ?
Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.09.2008, 10:48
Ответы с готовыми решениями:

Невидимая колонка в MSFlexGrid
Хочу сделать одну колонку невидимой: MSFlexGrid1.CollsVisible(0) = false на что мне компилятор говорит: Assignment to...

Правая колонка фиксированная
как ?

2 колонки, где 1 колонка 2 строки, и 2-я колонка 1 строка высотой первой колонки
вот есть такая табличка <table border="1"> <tr> <td rowspan="2">big column</td> ...

7
Comanche
20.09.2008, 17:35
Элементарно делается через преобразование координат, полученных из API-функции GetCursorPos, в координаты самого грида. В формуле участвуют координаты top-left угла как всей формы, так и грида. Получив координаты в момент _MouseUp, проверяешь десятью строчками кода, на какой столбец они пришлись, а затем делаешь с этим, что хочешь.

Если надо - могу прислать пример с исходниками.
0 / 0 / 0
Регистрация: 27.11.2007
Сообщений: 60
21.09.2008, 08:58  [ТС]
Буду очень благодарен !
Я бы сам покопался, да разобрался, но просто это нужно очень срочно, а ещё и другой работы выше крыши...
Адрес мой - Filin-Coo@yandex.ru
Спасибо.
0
Comanche
21.09.2008, 13:32
Выслал.
ponch
23.09.2008, 13:15
И мне , please
andrey104@mailru.com
1 / 1 / 0
Регистрация: 03.08.2007
Сообщений: 155
25.09.2008, 09:28
Пожалуйста, поделись с другими тоже...напиши для всех
0
0 / 0 / 0
Регистрация: 27.11.2007
Сообщений: 60
25.09.2008, 09:52  [ТС]
Короче, для вытаскивания номеров строк, как и номеров столбцов, пишем :

Private Sub MSFlexGrid1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim i As Integer
Dim MyCol As Integer
Dim MyRow As Integer

For i = 0 To MSFlexGrid1.Rows - 1
If MSFlexGrid1.RowPos(i) < Y Then
MyRow = i
Else
End If
Next i
MsgBox 'Строка ' & MyRow
For i = 0 To 6
If MSFlexGrid1.ColPos(i) < X Then
MyCol = i
Else
End If
Next i
MsgBox 'Колонка ' & MyRow
End Sub

Проще пареной репы ! :-)

Удачи !
0
Comanche
25.09.2008, 21:11
2 Филин: в твоём примере не учитывается, что из-за скроллинга ряд может 'уехать' за пределы видимости.

2 всем, кому выслал FlexGridTest.rar:

(а) в формулах для X_fg1 и Y_fg1 константа '15' - это на самом деле Screen.TwipsPerPixelX и ...Y, соответственно;
(б) проект работает только для Form1.ScaleMode = 1 (Twip). Для других значений надо переделывать формулы. Сам не копался в этом, но если кто-то это сделает - прошу поделиться;
(в) если кто знает, что за 'поправка' фигурирует в формулах (это которая принимает значения 45, 90 или 105), - тоже прошу информации.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.09.2008, 21:11
Помогаю со студенческими работами здесь

Фиксированная высота
Добрый день, делаю сайт, использую в нем фреймворк Botstrap. Столкнулся с проблемой. Когда выводит на страницу блоки с товарами, то эти...

Фиксированная кнопка
Помогите решить проблему! Есть ссылка, которую при скролле необходимо зафиксировать. Изначально ссылка находится внутри блока, при скролле...

Фиксированная страничка
Есть страничка фиксированной ширины в 1000px. Слева и справа пустые места(поля). Как убрать эти поля, а точнее как сделать так чтобы они...

Фиксированная шапка
Добрый день! Я новечек, пытаюсь сделать фиксированную шапку с прокруткой. Подскажите где ошибка? Html &lt;!DOCTYPE html&gt; ...

Фиксированная шапка
помогите сделать фиксированную шапку сдесь &lt;input class=&quot;printbutton&quot; type=&quot;button&quot; value=&quot;Распечатать страницу&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Опции темы

Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru