- 作成者投稿
- 2006年9月26日 3:18 pm #3636
FLONT
参加者OpenFileにて、開いたファイルのdocumentオブジェクトを取得する方法はありませんでしょうか?
すでに開いていて別ウィンドウ(グループ)であった場合、
そのdocumentの参照方法がわかりません。以前、旧フォーラムにてDocumentsで
別グループのdocumentを参照できないような記述がありますが、
OpenFileのヘルプには、「eeOpenAllowNewWindow」のオプションがあり、
「既に開かれている文書が無題でないか、または変更されている場合、新しいウィンドウで開きます。」と
エディター側が検知できているので、方法はあると思っているのですが。よろしくお願いいたします。
2006年9月26日 5:37 pm #3637Yutaka Emura
キーマスター残念ながら、別グループで開かれた場合は、その document オブジェクトを取得する方法はありません。なぜかというと、別グループの場合には、別スレッドになってしまうためです。EmEditor のマクロは、現在のところ、マルチスレッドの管理まで対応していません。
ここにある eeOpenAllowNewWindow というフラグは、別グループとは限らず、同じグループでも別のタブとして表示されることもあります。
2006年9月27日 12:04 am #3638FLONT
参加者Yutakaさんは書きました:
残念ながら、別グループで開かれた場合は、その document オブジェクトを取得する方法はありません。なぜかというと、別グループの場合には、別スレッドになってしまうためです。EmEditor のマクロは、現在のところ、マルチスレッドの管理まで対応していません。ここにある eeOpenAllowNewWindow というフラグは、別グループとは限らず、同じグループでも別のタブとして表示されることもあります。
現在方法が無いのは、本当に残念です。
単純に現在別のグループで開いている、
ドキュメントを、現在のグループで開くと、
開いてあるグループのWindowが前面に来ますよね。
何かしら別スレッドを管理しているものと思っていました。別にマクロについて要望もありますので、
改めて要望をあげさせていただきたいと思います。2006年10月16日 12:16 am #3727takuya
参加者ActiveXObjectで開いているWindowsの名前を取ってくることが出来ると思うので、そこからEditorをインスタンス取得してEditorオブジェクトを取得してdocumentsを取得して。。。。とすればいける気がします。
また週末にコード書いてみます。
2006年10月23日 8:20 am #3740FLONT
参加者takuya様
返信が遅くなりまして申し訳ありません。
ご教授ありがとうございました。
現在仕事が忙しいため試せていませんが、
時間が空き次第試そうと思います。それでは。
- 作成者投稿
- このトピックに返信するにはログインしてください。