konisi様、おへんじありがとうございます。
しかし、私の能力不足で、記述いただいた内容が、さっぱりわかりません。ごめんなさい。
色々と探していると、CreatFont関数で、フォントの高さと幅を変えられるようなのですが、私は、ベーシックのプログラムしか組めない、全くの素人ですので、
どのようにプログラムをすれば良いのか、全くわかりません。
つきましては、サンプルプログラムだけでも結構ですので、お教えください。
追伸 表示する文字を大きくしたいのですが・・・
※これは、#N88BASICや#promptで取り込まれる標準プロンプトの場合について言っています。
まず、Include\basic\prompt.sbpの位置が分かりますか?分かるなら話が早いのですが・・・。
そのファイルの300行目くらいのところにある
_PromptSys_LogFont.lfHeight=-16
の数値を変更すれば文字のサイズが変わるし、315行目くらいにある
lstrcpy(_PromptSys_LogFont.lfFaceName,"MS ゴシック")
のダブルクォーツの中の文字列を書き換えれば表示するフォントが変わる。
標準ファイルを変更したくなければ、それのコピーを作って取り込むのが一番早いんですが・・・
それと、分からない事があって、それがそのスレの現在の話題と割と合っているならここにレスしてください。
まず、Include\basic\prompt.sbpの位置が分かりますか?分かるなら話が早いのですが・・・。
そのファイルの300行目くらいのところにある
_PromptSys_LogFont.lfHeight=-16
の数値を変更すれば文字のサイズが変わるし、315行目くらいにある
lstrcpy(_PromptSys_LogFont.lfFaceName,"MS ゴシック")
のダブルクォーツの中の文字列を書き換えれば表示するフォントが変わる。
標準ファイルを変更したくなければ、それのコピーを作って取り込むのが一番早いんですが・・・
それと、分からない事があって、それがそのスレの現在の話題と割と合っているならここにレスしてください。
Website→http://web1.nazca.co.jp/himajinn13sei/top.html
ここ以外の場所では「暇人13世」というHNを主として使用。
に署名を書き換えて欲しいと言われたので暇だしやってみるテスト。
ここ以外の場所では「暇人13世」というHNを主として使用。
に署名を書き換えて欲しいと言われたので暇だしやってみるテスト。
なぜか前の投稿が飛んでますね...
それはともく本題ですが、表示する文字の大きさが固定であれば、標準ライブラリに少し手を加えることで大きさを変えることができます。
Include\basic\prompt.sbpを開いてください。
おそらく、302行に下ようなコードが書かれているので、この値を変更することで大きさを変えることが可能です。
もし、実行中に任意の大きさに変えたいのなら、あまりお勧めすることはできません。実際やろうと思ってコードを書いたのですが、フォントサイズの変更は可能でも、その他の描画とずれてしまい、それを修正するのには、プロンプトのコードにかなり手を加えなければならないためです。
一応、そのコードを載せておきます。
使い方は次の通りです。
追記:投稿内容が被ってしまいましたね。私もライブラリ開発メンバーの一人であるので、プロンプト環境はもう一度書き直して、さらに現在では不足している部分を補いたいと考えてはいるのですが、プロンプト環境まで手が回らないのが現状です。
それはともく本題ですが、表示する文字の大きさが固定であれば、標準ライブラリに少し手を加えることで大きさを変えることができます。
Include\basic\prompt.sbpを開いてください。
おそらく、302行に下ようなコードが書かれているので、この値を変更することで大きさを変えることが可能です。
コード: 全て選択
_PromptSys_LogFont.lfHeight=-16
一応、そのコードを載せておきます。
コード: 全て選択
'prompt.sbp内のどこかに追記してください。
Sub SetFontSize(size As Long)
Dim hDC As HDC
Dim hOldFont As HFONT
_PromptSys_LogFont.lfHeight = size
_PromptSys_FontSize.cx = size / 2
_PromptSys_FontSize.cy = _PromptSys_LogFont.lfHeight
_PromptSys_hFont = CreateFontIndirect(_PromptSys_LogFont)
hDC = GetDC(_PromptSys_hWnd)
hOldFont = SelectObject(hDC, _PromptSys_hFont)
DeleteObject(hOldFont)
End Sub
コード: 全て選択
#N88BASIC
Dim i As Long
For i = 0 To 10
SetFontSize(16 + i * 2)
Print "ActiveBasic"
Sleep(1000)
Next
追記:投稿内容が被ってしまいましたね。私もライブラリ開発メンバーの一人であるので、プロンプト環境はもう一度書き直して、さらに現在では不足している部分を補いたいと考えてはいるのですが、プロンプト環境まで手が回らないのが現状です。
おはようございます。
ご回答ありがとうございます。
今朝から、Include\basic\prompt.sbpをエクスプローラで、探していますが、
見当たりません。
しかし、ActiveBasic/Includeのフォルダーはあるのですが、
その中には、
api_commctrl.sbp
api_commdlg.sbp
api_gdi.sbp
api_mmsys.sbp
api_msg.sbp
api_reg.sbp
api_shell.sbp
api_system.sbp
api_window.sbp
api_windowstyles.sbp
basic_support.sbp
windows.sbp
しか、ありません。
現在、ActiveBasicは、Ver.2.62を利用しています。
やりたいことは、RS232Cで送受信した結果を画面表示するものなのですが、
その文字を大きく表示させたいのです。
Include\basic\prompt.sbpを変更するのが、一番良いと思うのですが、どうすれば良いでしょうか?
ご教示の程、よろしくお願いします。
ご回答ありがとうございます。
今朝から、Include\basic\prompt.sbpをエクスプローラで、探していますが、
見当たりません。
しかし、ActiveBasic/Includeのフォルダーはあるのですが、
その中には、
api_commctrl.sbp
api_commdlg.sbp
api_gdi.sbp
api_mmsys.sbp
api_msg.sbp
api_reg.sbp
api_shell.sbp
api_system.sbp
api_window.sbp
api_windowstyles.sbp
basic_support.sbp
windows.sbp
しか、ありません。
現在、ActiveBasicは、Ver.2.62を利用しています。
やりたいことは、RS232Cで送受信した結果を画面表示するものなのですが、
その文字を大きく表示させたいのです。
Include\basic\prompt.sbpを変更するのが、一番良いと思うのですが、どうすれば良いでしょうか?
ご教示の程、よろしくお願いします。