PDFのリストボックスに項目を追加するには?


iwiw  2004-04-01 15:59:24  No: 112602  IP: [192.*.*.*]

AFormAut1.0TypeLibrary/Field/PopulateListOrComboBoxを使用すれば可能かと思ったのですが、パラメータエラーで落ちてしまいます。
恐縮ですが、ソースを下記に記しますので、誤りと正しい使用方法をどなたかご教授願います。よろしくお願いします。

環境:WinXp VB6.0 Acrobat6.0


Do Until objRSet.EOF
strGroup(intCnt) = objRSet.Fields("group").Value
strWorkArr(intCnt) = objRSet.Fields("group").Value
strName(intCnt) = objRSet.Fields("name").Value
objRSet.MoveNext
intCnt = intCnt + 1
Loop
    
objlstGroup.PopulateListOrComboBox strGroup, strWorkArr

編集 削除
とろ  2004-04-01 17:28:54  No: 112603  IP: [192.*.*.*]

strGroup() と strWorkArr() に全く同じ値を設定しているので、
何を行いたいのかいまいち分からないのですが。

多分、ある文字列型配列の値をリストボックスなどにセットしたいという
ことだと思うので、その方法を Acrobat SDK よりそのまま抜粋します。
# ちなみに、未確認です。悪しからず。

Dim arrExp(1) As String
arrExp(0) = “Visa”
arrExp(1) = “Mastercard”
Field.SetExportValues arrExp

# なんか Adobe のホームページでの技術情報の検索が
# できなくなってしまったような気がしますね (ToT)
# 私が気づいてないだけで、ホントは今でもできているのかな?

編集 削除
とろ  2004-04-01 20:52:27  No: 112604  IP: [192.*.*.*]

# 上の投稿は、ちょっと無視して下さい <(_^_)>

編集 削除
iwiw  2004-04-02 08:56:19  No: 112605  IP: [192.*.*.*]

とろ様、ありがとうございます。

PDFの開発に携わるようになってまだ日が浅いので、技術情報の検索にもいっぱいいっぱいです(英語ばかりだし。。)。

また、何かお気づきの点があったらよろしくお願いします。

編集 削除
とろ  2004-04-02 11:02:15  No: 112606  IP: [192.*.*.*]

# 改めて投稿します。

objlstGroup.PopulateListOrComboBox strGroup, strWorkArr
でリストボックスに正しく設定できましたよ。
環境 : Win2000(SP3) + VB6(SP5) + Acrobat 5

どのように行っているのでしょうか?

# リストボックスに新しい値を設定後、PDFを保存・終了しても、
# 次回開いた初期表示は古い値のままですね。
# 一度、リストボックスなどをクリックすると、新しい値が反映されます。

編集 削除
iwiw  2004-04-02 11:39:18  No: 112607  IP: [192.*.*.*]

とろ様、たびたびありがとうございます。
早速ですが、ソースは最初の投稿に記載したとおりです。

ですが、
"objlstGroup.PopulateListOrComboBox strGroup, strWorkArr"の時点で実行時エラーが発生してしまいます。。
"プロシージャの呼び出し、または引数が不正です"というやつです。

PDFの方のリストボックスのプロパティ等の問題かとも思ったのですが、特にデフォルトから設定を変えていません。
けれども上記のソースで動いたのでしたら、何かケアレスミスをしているかもしれないので、ちょっと調査してみます。
いろいろとありがとうございます。

ちなみに質問なのですが、ここでいう、strWorkArrの意味(必要性?機能?)が何か解りません。
もしご存知でしたら合わせてご教授願います。。

編集 削除
とろ  2004-04-02 12:42:54  No: 112608  IP: [192.*.*.*]

> "プロシージャの呼び出し、または引数が不正です"

うぅ〜ん。分かりませんねぇ。
strGroup() と strWorkArr() とで配列のサイズが異なるとか...

> ここでいう、strWorkArrの意味(必要性?機能?)が何か解りません。

HTML(JavaScript) のリストボックスでは
項目毎に item と value という2つの値を設定できます。
item  : リストボックスに表示させる値
value : 内部的に持つ値

# ○ HTML
# <select name="list1">
#   <option value="value1">item1</option>
#   <option value="value2">item2</option>
# </select>

VB のリストボックスで言うと
List プロパティと ItemData プロパティのような(?)関係です。
普通は ItemData は使用せずに、内部的にも表示された値と同じ List/Text の値で
処理する場合がほとんどだとは思いますが。

objlstGroup.PopulateListOrComboBox strGroup, strWorkArr
で言うと、 strGroup() がリストボックスに表示され、
そのリストから選択された値を value プロパティで取得しようとすると、
strWorkArr() からの値を取得します。

# 以上、おおざっぱに説明いたしました。

編集 削除
iwiw  2004-04-02 12:57:12  No: 112609  IP: [192.*.*.*]

>ここでいう、strWorkArrの意味
の説明、とても解りやすかったです。なるほどです。

この件はもうちょっと調査してみます。
全く見当違いのロジックを組んでいないことが解っただけでも目付け物です。ありがとうございます。
解決、若しくは別のことで行き詰ったらまた質問しますので、その際はよろしくお願いします。

編集 削除