ページ 11

テキストエディタでの縦書きについて

Posted: 2005年7月16日(土) 22:15
by BingoMan
テキストエディタで縦書きをできるようにしたいのですが、何かよい方法はないでしょうか?

Posted: 2009年9月11日(金) 23:16
by カロン
2次元配列を作ってそこにテキストを入れるとよいかと思います

コード: 全て選択


Dim ero[10,10] As Byte
Dim linebuffer[10] As Byte
Dim x As Word,y As Word

For x=0 To 10
For y=0 To 10
ero[x,y] = Asc(" ")
Next
Next

ero[10,0] = Asc("a")
ero[10,1] = Asc("c")
ero[10,2] = Asc("t")

PrintLine(0)
PrintLine(1)
PrintLine(2)

'表示したい行を洗濯
Sub PrintLine(l As Word)
For x=0 To 10
	linebuffer[x] = ero[x,l]
Next
MessageBox(0,linebuffer, "Line", MB_YESNO)
End Sub



Posted: 2009年9月12日(土) 02:06
by konisi
Win9x系では、

コード: 全て選択

SendMessage(hEdit,EM_SETOPTIONS,ECOOP_OR,ECO_VERTICAL)
でいけるらしいです。
定数は以下。

コード: 全て選択

Const ECO_VERTICAL=&H400000
Const ECOOP_OR=2
配列など使わずに素直にオーナードローしましょう。