2017-03-06 6 views
0

次元(0〜19,0〜7)の2次元配列を持ち、配列0の列0の値を表示するリストボックスを持っています。リストボックスの3列目(4列目)には、RGB値にカンマ区切り記号が付きます。 0,255,255。関数宣言は以下のように書かれているリストボックスのアイテム値を取得します。

Set oText_LB1 = TextFromArray(Point, ArraysSorted(0), FrmMain.LB_Sheet1) 

:私は配列を渡す午前クラスの機能などのようなパラメータ(ポイントが位置座標が、この問題に関連しない)としてリストボックスを有する

Private Function TextFromArray(Point As Point3d, ByRef CurrArray As Variant, ByVal LBox As ListBox) 

TextFromArray機能の目的は、テキストフォーマットの値(色/フォント/高&幅サイズなど..)を格納するために使用されている配列の値といくつかのリストボックス列からテキスト要素を作成することです。テキストエレメントは転置フォーマットで作成されます。つまり、ヘッダーは左(縦に積み重ね)になり、列の値は左から右に水平に作成されます。このような私のアレイループコードがあるように:私は、各行を開始するよう

For C = LBound(CurrArray, 2) To UBound(CurrArray, 2) 
    For R = LBound(CurrArray, 1) To UBound(CurrArray, 1) 

は、私はすべてのテキスト要素は、例えば、正しい色で作成されるように、リストボックスのカラム3に格納された値を取得したいです配列行0では、リストボックス値0,3を取得します。私は以前、RGB値をTextFromArray関数のパラメータとして渡していましたが、すべて正常に機能しましたが、値の取得方法を苦労しています。私は使用しようとしました:

For C = LBound(CurrArray, 2) To UBound(CurrArray, 2) 
    For R = LBound(CurrArray, 1) To UBound(CurrArray, 1) 
     sRGBVal = CStr(LBox.List(C, 3)) 

しかし、これはnullエラーの無効な使用を与えます。私は誰かが正しい方向に私を向けることを望んでいる。情報が不足している場合はお知らせください。必要に応じて追加のコードや画像を提供します。

おかげ

+0

エラーが発生しているラインはどれですか? –

+0

sRGBValの3行目はエラーが発生する場所です。リストボックスの行の値と相関させ、その行のリストボックスの列3の項目値を取得するには、配列の列の値が必要です。 – KnightFallz

+0

Cの値は?また、どのように関数にリストボックスを渡していますか?コードを停止して直接ウィンドウで行うと:?LBoxは何もありません。オブジェクトが存在することを確認していますか? –

答えて

0

はそうのような(byRefでまたはBYVALを宣言していない)一般的なオブジェクトとしてリストボックスを渡すために関数定義を変更してみてください:

Private Function TextFromArray(Point As Point3d, ByRef CurrArray As Variant, _ 
            LBox As Object) 

問題が解決しない場合、あなたは試してみてください同じ方法でリストボックスの代わりにフォーム全体を渡して、渡されたフォームからリストボックスにアクセスするだけです。

+0

私はちょうどそれを試みましたが、それでも同じ結果です。エラーが発生したときにLBoxには価値があるかどうかは分かりませんが、LBoxにはローカルウィンドウに表示される情報が含まれています。これはhttp://i.imgur.com/nqAQ1n2.pngで見ることができます。 – KnightFallz

+0

リストボックスからrgb値にアクセスしようとしているときにリストボックスに値が入力されていますか? –

+1

私はちょうどhallelujahの瞬間を持っていましたが、同時にやや恥ずかしいです。フォームは実際にhttp://i.imgur.com/PGkeb1I.pngで見ることができるように設定されています。しかし、Go!ボタンコードでは、クラスを開始する行の後に、クラスのデータポイント(左クリック)が必要です。コードは続行され、Goの次の行に移動することがわかりました。なぜオブジェクトが存在しなかったのかを説明する「アンロード・ミー」ボタン!私はそれが隠れていた印象の下にいました。私自身の間違いを解決する助けに感謝します。 – KnightFallz

関連する問題