HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2015
0831
K.Rインターネットについて3解決


K.R

リンク

2015/8/31(Mon) 11:12:29|NO.71157

インターネットブラウザで
二つ以上タブを開く方法を教えてください



この記事に返信する


チャーくん

リンク

2015/8/31(Mon) 11:27:16|NO.71158

超大雑把な言い方ですが、
一つのウィンドウでIEコンポーネントを切り替えるのは大変なので、
bgscrで作った複数の枠なしウィンドウにIEコンポーネントを一つずつ置き、
Screenなどで作った親ウィンドウに、子ウィンドウを重ねた(みたいな…?)状態にして、
タブの切り替えは子ウィンドウの表示・非表示でできるはずです。

でも、いきなりタブを実装するのは難しいので、まずはIEコンポーネントの扱いに
慣れた方がいいかもしれません。

ある程度わかるようになったら、「タブコントロール」や「HSP ブラウザ タブ」
などで検索してみてください。



b

リンク

2015/8/31(Mon) 13:30:45|NO.71160


;Kpanさんのものを改造 ;b #module #uselib "user32" #func GetClientRect "GetClientRect" int, int #func SetWindowLong "SetWindowLongA" int, int, int #func SetParent "SetParent" int, int #uselib "gdi32" #cfunc GetStockObject "GetStockObject" int ; CreateTab p1, p2, p3, p4 ; タブコントロールを設置します。statにタブコントロールのハンドルが ; 返ります。 ; p1〜p2=タブコントロールのX/Y方向のサイズ ; p3(1)=タブの項目として貼り付けるbgscr命令の初回ウィンドウID値 ; p4=タブコントロールの追加ウィンドウスタイル #deffunc AddNetTab int p1, int p2, int p3, int p4 winobj "systabcontrol32", "", , $52000000 | p4, p1, p2 hTab = objinfo(stat, 2) sendmsg hTab, $30, GetStockObject(17) TabID = p3 if TabID = 0 : TabID = 1 dim rect, 4 return hTab ; InsertTab "タブつまみ部分の文字列" ; タブコントロールに項目を追加します。 #deffunc InsertTab str p2 pszText = p2 : tcitem = 1, 0, 0, varptr(pszText) sendmsg hTab, $1307, TabItem, varptr(tcitem) GetClientRect hTab, varptr(rect) sendmsg hTab, $1328, , varptr(rect) bgscr TabID + TabItem, rect.2 - rect.0, rect.3 - rect.1, 2, rect.0, rect.1 SetWindowLong hwnd, -16, $40000000 SetParent hwnd, hTab TabItem++ return ; タブ切り替え処理用 #deffunc ChangeTab gsel wID + TabID, -1 sendmsg hTab, $130B wID = stat gsel wID + TabID, 1 return #global title "タブコントロールブラウザ" syscolor 15 : boxf pos 0,0 button gosub "タブ追加",*taba AddNetTab ginfo_winx, 450, 1 hTabControl = stat ; 元々のscreen命令のウィンドウID 0に描画先を戻します。 gsel oncmd gosub *notify, $4E stop *Taba Adr="http://www.google.co.jp" testid++ InsertTab "Tab: "+testid pos 0,35 axobj IE, "Shell.Explorer", ginfo_winx,390 IE->"Navigate" ""+Adr pos 0,0 mes "URL:" pos 50,0 input Adr,200,20 pos 260,0 button gosub "go",*gopage gsel 1, 1 return *gopage IE->"Navigate" ""+Adr return *notify dupptr nmhdr, lparam, 12 if nmhdr.0 = hTabControl & nmhdr.2 = -551 { ChangeTab ; 元々のscreen命令のウィンドウID 0に描画先を戻します。 gsel } return
これで無限にタブが開けるタブブラウザもどきができるはず



K.R

リンク

2015/8/31(Mon) 15:11:28|NO.71163

ありがとうございます



ONION software Copyright 1997-2021(c) All rights reserved.