0

SQL Server 2008 R2 データベースに接続する VB6 プログラムに取り組んでいます。これまで、私は常に MSFlexGrid コントロールを使用し、手動で設定してきました。しかし今、これにお金を払っている人は、代わりにデータ バインド グリッドを使用するように求めています。私は DAO ではなく ADO を使用しているため、MSHFlexGrid コントロールを使用する必要があります。そこで、2つ質問があります...

まず、MSHFlexGrid で列を移動するにはどうすればよいですか? たとえば、グリッドの 3 番目の列を 6 番目の列として表示したい場合、それを行う単純な 1 行のコードはありますか?

次に、信じられないかもしれませんが、レコードセットからデータをそのまま表示する以外に、グリッドで何もする必要はありませんでした。ただし、現在、他のファイルのレコードを参照する ID 番号のみを含むいくつかのフィールドを含むレコードセットがあります。たとえば、顧客の名前を含むフィールドではなく、顧客テーブルのレコードを参照する ID 番号を含むフィールドです。 . 列にレコードセットの顧客 ID 番号を表示する代わりに、その列に顧客名を表示する最も簡単な方法は何ですか? SQL コマンドを MSHFlexGrid 列に埋め込む方法があることをどこかで読んだと思ったのですが、ある場合はその方法がわかりません。これは可能ですか、それとももっと簡単な方法がありますか?

ティア、

ケビン

4

2 に答える 2

1

列の順序は通常、SELECT ステートメントによって処理されます。

Fruits テーブルの FruitID に関連する FruitID 外部キーを持つ Pies テーブルがあるとします。

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

これは、ID、Pie、Fruit の 3 つのアイテムをこの順序で返します。

クエリ/表示操作の後に列を移動することはめったに使用されませんが、はい、ColPosition を使用できます。

于 2011-04-06T00:56:02.780 に答える
1

わお!VB6.... バック・トゥ・ザ・フューチャー!:-)

ColPosition プロパティを使用して列を移動できます。

この記事では、グリッドをセットアップして階層データを表示する方法を示します。

メイン データと同じ行に顧客名を表示するだけの場合は、データ ソースに適切な SQL を作成するだけで実行できます。さらに言えば、列の順序も同じ方法で制御できます。

では、.Netへのアップグレードを検討してみてはいかがでしょうか。冗談です.....いいえ、そうではありません。わかった。私はそうかもしれません。:-)

于 2011-04-06T00:49:41.493 に答える