■73019 / inTopicNo.3) |
Re[2]: WebBrowserを使用したエディターでの改行について |
□投稿者/ 魔界の仮面弁士 (77回)-(2014/08/11(Mon) 21:41:14)
|
■No73014 (魔界の仮面弁士 さん) に返信
>>改行には<p>タグでなく<br/>になるようにしたいのですが、
>>どのようにすればいいでしょうか?
> Enter は段落の区切りで、
> Shift + Enter が物理改行です。
こういった手法もあるようです。
http://q.hatena.ne.jp/1159840119
上記を WebBrowser に置き換えてみたもの。
Public Class Form1
Private Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click
TextBox1.Text = WebBrowser1.Document.InvokeScript("fnHtml")
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
Dim html = <html>
<head>
<script>
var doc=null;
function fnInit(){
doc=frames[0].document;
doc.designMode='on';
setTimeout(fnInsertBR,0);
}
function fnInsertBR(){
doc.documentElement.onkeydown=function(){
var e=window.frames[0].event,k=e.keyCode;
if(k==13){
var t='the_dummy_tag';
var b=doc.createElement('br');
doc.execCommand('InsertMarquee',false,t);
var tag=doc.getElementById(t);
tag.parentNode.replaceChild(b,tag);
return false;
}
};
}
function fnHtml(){return doc.documentElement.innerHTML;}
</script>
</head>
<body onload='fnInit()' style='margin:0;padding:0;overflow:hidden;'>
<iframe style='width:100%;height:100%;margin:0;padding:0;'></iframe>
</body>
</html>
WebBrowser1.DocumentText = html.ToString()
End Sub
End Class
|
|