よろしくお願いします。
windows7 Delphi 6 personalです。
Webbrowserの勉強をしています。
質問
Pagecontrolでタブ式ブラウザを作成しています。
Google Chromeにある「タブの複製」を実現したいのですが
メソッドを見ても、
ネットで探してもタブの複製らしきものを探せません。
Pagecontrolのタブの複製は不可能なのでしょうか。
よろしくお願いします。
単に動的生成を行って、同じページにナビゲートする、というだけでは
だめなのでしょうか?
あ さんレスありがとうございます。
私も真っ先に考えました。
しかし、画面に入力などして画面が編集されている場合
同じアドレスにナビケーとしたのでは
複製になりません。
そのため質問しました。
すみません。
自己レスです。追記、
私はGoogle Chromeは使っていないのですが、テストしたとき
Google Chromeのタブの複製に気づきこれは便利だなと思いました。
しかしあさんの言われるように
単にアドレスをナビゲートするだけだと編集内容がコピーされないようです。
(編集内容はコピーされないから)
しかし、IE9をテストしたところ複製は編集した画面もコピー出来るようです。
ということは、複製は可能なのか??。
いくらネットで探してもヒットしません。
難しいのでしょうか。
こんにちは,Mr.XRAYです.
>私も真っ先に考えました。 以下,略
既に謝罪しているのに,追い討ちでスミマセン.
こういう手順を最初に書いた方がいいですね(「後出し」と言います).
もちろん,Google Chrome の該当動作を全ての人が知っていれば別ですが.
http://ht-deko.minim.ne.jp/tech045.html#tech095
前の文章だけから判断するなら,
>単に動的生成を行って、同じページにナビゲートする、
で十分ですね.
で,考え方ですが,
ブラウザに表示される,されている画面というのは,HTML というコードで指定しています.
つまり,HTML コードが変更となれば,ブラウザの表示も変わります.
入力欄があるページに,何かを入力して,それが表示されるということは,表示の元になる
HTML コードが変わるということになります.
(1) 表示している HTML のDocumentのソースを取得する(アドレスの HTML コードではなく)
TStringList や TStringStream,TMemoryStream 等を使用して
(2) 新規にタブを作成する
(3) そのタブに取得した HTML コードを表示する
(4( アドレスバーの URL は,元のアドレスとする
といった手順でできます.
>ということは、複製は可能なのか??。
他のアプリがやっているのですから,基本的には可能でしょうね.
Delphi も アプリ作成用の言語ですから.
HTML コードや,ブラウザに表示するということは,どういうことなのか,
ブラウザの画面に入力するというのは,どういうことなのか.
勉強されるといいと思います.
では,がんばってください.
Mr.XRAYさんのご気分を害したようですね。すみません。
>私も真っ先に考えました。 以下,略
たいしてトライもせず質問するのは悪いと思って、トライした中の
一つの体験だったのでそう書きました。
既に謝罪しているのに,追い討ちでスミマセン.
こういう手順を最初に書いた方がいいですね(「後出し」と言います).
もちろん,Google Chrome の該当動作を全ての人が知っていれば別ですが.
後出しにならないように私がトライした内容を全部書くべきだったのですね。
誰が誰に謝罪したのにかよく意味がくみ取れませんでした。
前の文章だけから判断するなら,
>単に動的生成を行って、同じページにナビゲートする、
で十分ですね.
私はWebbrowserの勉強をしていつと書いています。
TWebbrowserではフォルダパスを与えると中のファイルなどをアイコンだったりリスト?だったり表示しますか、表示ブルダウンメニューで特大アイコンや
詳細表示に切り替えられます。
そしてこの状態は他のタブをクリック表示しても維持します。
このようにアドレスをナビゲートしただけでは複製にならないので
質問しました。なにもWebページだけではありません。
従いまして十分ではありません。
もともとは、画面のインスタンスみたいなものを複製する方法が
ないのだろうかと思った次第です。
やはり難しいんでしょうね。
ありがとうございました。
こんにちは,Mr.XRAYです.
>Mr.XRAYさんのご気分を害したようですね。すみません。
何か勘違いしているようですが.気分は全く害していませんよ〜.
リンクの記事にもあるように,役に立つレスが欲しいのであれば,ということです.
レスを期待しないで,ただ掲示板に何かを書きたかった,というのであれば別ですが(笑).
>やはり難しいんでしょうね。
で,私のレスの方法では無理があるということですね?
あんまりやったことがないので、うろ覚えなのですが、XRay氏の言われた
方法は、リンクとかも正常に再現できましたか?
確か、A HREF〜の相対リンクなんかがうまく再現できず、そのまま使うには
厳しかったんじゃなかったかと思ったのですが。
できてたとしたらごめんなさい。無視してください。
こんにちは,
>確か、A HREF〜の相対リンクなんかがうまく再現できず、そのまま使うには
>厳しかったんじゃなかったかと思ったのですが。
スミマセン.これは確認していませんでした.
確かに,言われてみれば,そうなるのは想定できますね(想定外ではない ! (^^; )
相対リンクを,絶対リンクに修正しないといけないのか... う〜む.面倒ですね.
こんな感じでどうでしょう.
[TEmbeddedWB で表示中のウェブページを複製]
http://mrxray.on.coocan.jp/Others/WebPageCopyAnothreTab.htm
あさん、Mr.XRAY さんありがとうございます。
Web画面をWebタブととらえるとたとえば
http://miuras.net/taro/cyclamen.cgiで「新規投稿」をクリックすれば
画面は変わるけどURLは変わりません。フレーム構造など分析していては
きりがないと思います。
フォルダパスを読ませるとフォルダ内容を展開してくれますが
「表示」メニューで特大アイコン、詳細などと変更しているのを
アドレスで複製しても再現しません。
どこかを解析すれば再現できるでしょうが私には無理です。
タブを一つの画像のような感覚で複製できないなと考えたわけですが
膨大な解析コードを書く能力はないし、元はといえばブラウザを作成する
のが目的ですから、今回はあきらめます。
うかつにも今回気づいたのですがGoogle ChromeはWeb画面の複製は出来るが編集した内容は複製できない。しかし、フォルダパスは表示できるが「表示」の切替は出来ない?。IE9はWeb画面の編集分も複製できるが、フォルダパスを表示できない。以前は出来たような気がしますが。
このように、メジャーアプリもなんだか中途半端ですから
私がやってみようかと思うのがおそれおおい。
ありがとうございました。
IEと同じような動作仕様に変更しました.
[TEmbeddedWB で表示中のウェブページを複製]
http://mrxray.on.coocan.jp/Others/WebPageCopyAnothreTab.htm
ツイート | ![]() |