DHTMLEditコントロールで、選択文字列のフォントのサイズを変更するには?

解決


マロン  2006-06-07 22:25:59  No: 95662

[開発環境:VB6SP6/WinXP]

いつもお世話になります。

さて質問なんですが、DHTMLEditを使って選択した文字列のフォントサイズを
変更したいのですが、そのやり方がなかなかわかりません。
フォントダイアログを表示させるやり方であれば、例えば

    With DHTMLEdit1
        If .QueryStatus(DECMD_FONT) = DECMDF_ENABLED Then
            .execCommand DECMD_FONT
        End If
    End With

とすれば、ダイアログボックスが表示されて、フォントの種類やサイズ
を変更することはできるのですが、そうではなく、フォントサイズ
(フォント名もですが)を別々に変更したいと思っています。

具体的には、フォントサイズを任意に選択するコンボボックス
を自分で用意しておき、そこから希望のサイズを選択すれば、
選択文字列が指定したサイズに変更できるようにしたいのです。

DECMD_SETFONTSIZE  を使うのでしょうけど、その具体的な使い方が
ネットでどこを探しても見つからずにいます。

何かヒントを頂けると助かるのですが。


魔界の仮面弁士  2006-06-07 23:24:54  No: 95663

> DECMD_SETFONTSIZE  を使うのでしょうけど、
それを使うのであれば、
  .ExecCommand DECMD_SETFONTSIZE, OLECMDEXECOPT_DODEFAULT, 「1〜7」
ですね。<FONT SIZE="7"> などが挿入されます。すなわち、
  .DOM.ExecCommand "fontSize", False, 値
と同様の効果が得られるわけです。

> その具体的な使い方がネットでどこを探しても見つからずにいます。
"DHTML Editing Component SDK" は、お持ちでは無いですか?
その SDK に付属のヘルプ (SDK_Help.chm) では、DECMD_SETFONTSIZE について
》 A numeric value indicating the HTML font size to apply in the range 1 to 7.
のように書かれていますよ。


マロン  2006-06-08 00:32:12  No: 95664

魔界の仮面弁士さん、大変ありがとうございます。

.ExecCommand DECMD_SETFONTSIZE, OLECMDEXECOPT_DODEFAULT, 「1〜7」
はやっていたんですが、ただ、最後のパラメータの値が1〜7という
ことを知らずに、試しに9に固定していたのでエラーが出ていました。
それで、1〜7で実験したらうまく行きました。ありがとうございました。

ところで、"DHTML Editing Component SDK" ですが、私は持っていないです。
http://madia.world.coocan.jp/vb/vb_bbs/200301_03010027.html
で、魔界の仮面弁士さんがDHTMLEditについてレスを書かれていますね。
参考にさせて頂きます。
ただ、上記のページで紹介されているMicrosoftのサイトで、どこから
DHTML Editing Component SDKがダウンロードできるのかわかりません
でした。もっと詳しく調べてみます。

また、上記のページではDHTMLEditコントロールの著作権に関する
質問がされていますが、Webブラウザコントロールを使用した場合に、
SHDOCVW.DLLを再配布してはいけないのと同じで、DHTMLED.OCXを
再配布しなければ良いのだろうと思いますが、もしよろしければ
参考のご意見を聞かせて頂ければありがたいです。


マロン  2006-06-08 01:20:40  No: 95665

いろいろ検索していましたら、DHEdSDK.exeというのをダウンロード
できるサイト
http://web.coehs.siu.edu/Utilities/Editors/Misc/
が見つかりましたので、試しにそちらからダウンロード
してインストールしたら、サンプルを見ることができました。
ありがとうございました。

DHTMLED.OCXの件は、もしよろしければ、参考のご意見をお聞きできれば
幸いです。


マロン  2006-06-08 01:21:37  No: 95666

すみません。忘れていました。
一応解決のチェックを入れときます。


魔界の仮面弁士  2006-06-08 03:03:57  No: 95667

> ただ、上記のページで紹介されているMicrosoftのサイトで、
現在はリンクが消失しています。

> どこからDHTML Editing Component SDKがダウンロードできるのか
私は、MSDN Subscriber Download サイトからダウンロードした SDK を
利用しています。マロンさんが見つけられた物と同じようですね。

> DHTMLED.OCXを再配布しなければ良いのだろうと思いますが
そして Triedit.dll も、ですね。
個人的には、コンポーネント自体を再頒布しないのであれば、それを使った
アプリを作成し、配布あるいは頒布する事は可能だと思います。

license.txtにも書かれていますが、設計、開発、テスト目的での使用が
許可されているはずだからです。(Software Product の項ですね)

ドキュメントを読み進めてみると、これらのファイルを使った自作アプリを配布する場合、
「そのアプリのセットアップには、これらのコンポーネントを含めなければいけない(MUST)」
という意図の文章もありますので、読み様によっては、常にocx等を一緒に含めなければいけないとも
読めますが……これはライセンス上の話ではなく、運用面での話でしょうね。
セットアップに含めたくないなら、含めなくても良いのだと思います。

あとは、自作ソフトに有効な版権情報を入れよ、とか、それを販売するなら、
MSのロゴとかは使っちゃ駄目だとか、細かい事が書かれているようなので、
翻訳サイトとかを使いながら、一通り読んでみてください。


マロン  2006-06-08 04:31:28  No: 95668

大変参考になりました。
どうもありがとうございます。

> そして Triedit.dll も、ですね。

はい、承知しております。

> 個人的には、コンポーネント自体を再頒布しないのであれば、それを使った
> アプリを作成し、配布あるいは頒布する事は可能だと思います。

私もそう思います。
どこかのWYSIWYGエディタの紹介サイト(法人かな?)で、DHTMLED.OCXや
Triedit.dllがそのソフトのユーザーのマシンに存在していない場合の
対処方法が記載されているのを見たことがあるのですが、内容は
http://〜  からダウンロードしてね」という形のものでした。

なので、DHTMLED.OCXやTriedit.dllは、別の形でユーザーから任意に
ダウンロードしてもらうといいのかなと思っているところです。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加