VB6 и привязанный к данным MSHFlexGrid, перемещение и заполнение столбцов - PullRequest
0 голосов
/ 06 апреля 2011

Я работаю над программой VB6, которая подключается к базе данных SQL Server 2008 R2. В прошлом я всегда использовал элемент управления MSFlexGrid и заполнял его вручную. Теперь, однако, парень, который платит мне за это, хочет, чтобы я вместо этого использовал сетки с привязкой к данным, что вынуждает меня использовать элемент управления MSHFlexGrid, потому что я использую ADO, а не DAO. Итак, у меня два вопроса ...

Во-первых, как мне переместить столбец в MSHFlexGrid? Например, если бы я хотел, чтобы третий столбец отображался как шестой столбец в сетке, есть ли простая строка кода, которая бы это делала?

Во-вторых, хотите верьте, хотите нет, мне никогда не приходилось ничего делать в сетке, кроме отображения данных, как есть, из набора записей. Однако теперь у меня есть набор записей с некоторыми полями, которые содержат только идентификационные номера, которые относятся к записям в других файлах - например, поле, содержащее идентификационный номер, относящийся к записи в таблице Customers, вместо поля, содержащего имя клиента , Как проще всего вместо того, чтобы в столбце отображались идентификаторы клиентов из набора записей, чтобы в этом столбце отображались имена клиентов? Мне показалось, что я где-то читал, что есть способ встроить команду sql в столбец MSHFlexGrid, но если это так, я не знаю, как это сделать. Это возможно, или есть более простой способ сделать это?

ТИА

Kevin

Ответы [ 2 ]

1 голос
/ 06 апреля 2011

Порядок столбцов обычно обрабатывается вашим оператором SELECT.

Допустим, у вас есть таблица Pies с внешним ключом FruitID, связанным с FruitID в таблице Fruits:

SELECT PieID AS ID, Pie, Fruit FROM Pies LEFT OUTER JOIN Fruits
    ON Pies.FruitID = Fruits.FruitID

Возвращает 3 элемента: ID, пирог и фрукты в указанном порядке.

Перемещение столбцов после операции запроса / отображения используется редко, но для этого можно использовать ColPosition.

1 голос
/ 06 апреля 2011

Вау! VB6 .... Назад в будущее! : -)

Вы можете перемещать столбцы , используя свойство ColPosition .

В этой статье показано, как можно настроить сетку на отображение иерархических данных.

Если вы просто хотите отобразить имя клиента в той же строке, что и основные данные, то это также можно сделать, просто создав соответствующий SQL для вашего источника данных. В этом отношении вы можете также контролировать порядок столбцов.

Теперь, как насчет обновления до .Net? Шучу ..... Нет, я нет. ХОРОШО. Я, может быть. : -)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...