検索結果 183 件

by 淡幻星
2015年9月29日(火) 12:54
フォーラム: 実践コードモジュール
トピック: EditboxにおけるIME変換中(漢字変換中)の背景色変更
返信数: 0
閲覧数: 53605

EditboxにおけるIME変換中(漢字変換中)の背景色変更

EditboxにおけるIME変換中(漢字変換中)の背景色を変更する方法。 合わせて、通常時のEditBoxの背景色変換にも対応(こっちはオマケ)。 使い方は、下記のコード冒頭のコメントを参照ください。 なお、処理の詳細はこちら↓に記載。興味あればどうぞ~。 WM_IME_COMPOSITIONを掴まえた後の具体的な処理について /* [MngBackgoundColorText.sbp] 背景色を管理するクラスの定義。 Fontは窓に紐づくが、背景色は描画のタイミングで明示的に設定するものなので、 必ずしも紐づける必要はない。--> このクラスで別管理する。 ※IME変換中の文節などは、下線で...
by 淡幻星
2015年9月05日(土) 19:35
フォーラム: プログラミング質問板
トピック: 複数行EditBoxでショートカットキーの登録
返信数: 11
閲覧数: 17863

Re: 複数行EditBoxでショートカットキーの登録

Beep音が消えたようで良かったです。 Ctrl+Zの件は、、、分かりません。 本件のWM_CHARに対する処理を追加してから、の現象でしょうか? WM_CHARでCtrl+Zを捉まえては「いない」のですよね? 行番号の件は、、、フォントをうまく取得出来ていないんだと思います。 もし、私が投降したコードを利用しているのであれば、 SelectObject( hDC, SendMessage( hWnd, WM_GETFONT, 0, 0 ) ) の部分で、SendMessage( hWnd, WM_GETFONT, 0, 0 )の値が失敗していないか 確認してください。 ※K2さんのコードの場...
by 淡幻星
2015年8月17日(月) 00:23
フォーラム: プログラミング質問板
トピック: 複数行EditBoxでショートカットキーの登録
返信数: 11
閲覧数: 17863

Re: 複数行EditBoxでショートカットキーの登録

大変間が空いてしまってすみません。 (なかなか来れませんでした・・・) で、先の私の投稿、間違いがありました。大変申し訳ないです。 ビープ音を消すには、WM_DOWNでExit Functionするだけでは不十分でした。 WM_CHARを捉まえて、これに対してもExit Functionしてあげてください。 自コードの場合は、WM_DOWNの処理に続いて、下記のように書いてました。 V~Gと記述しているキーとCtrl同時押しに対して、ビープ音とデフォルト動作を無効化しています。 Case WM_CHAR GetKeyboardState( buf ) If( buf[VK_CONTROL] A...
by 淡幻星
2015年7月12日(日) 15:49
フォーラム: プログラミング質問板
トピック: 複数行EditBoxでショートカットキーの登録
返信数: 11
閲覧数: 17863

Re: 複数行EditBoxでショートカットキーの登録

(だいぶ間が空いてしまったので、見てないかもしれませんが)
こちらなのですが、実際試してもやはりビープ音がなってしまいます
んー、Ctrl+Aが押されたときに正しくExit Functionで
抜けて入れば、ビープ音はならない筈なので、、、
期待したとおりにExit Functionで抜けているか、あたりを
見てみてはいかがでしょうか?
by 淡幻星
2015年4月25日(土) 22:06
フォーラム: プログラミング質問板
トピック: 複数行EditBoxでショートカットキーの登録
返信数: 11
閲覧数: 17863

Re: 複数行EditBoxでショートカットキーの登録

上記の、7さんのコメントで解決してるかもしれませんが、 「独自のショートカットキーを登録」は当方のエディタ(※1)でも やってる処理なので参考までにコメントします。 Q:ビープ音を無くすには? A:サブクラス化したプロシージャ関数の戻り値に「0」を返せばOK。 以下、自コードからの抜粋です。 'Editboxのサブクラス化プロシージャ。 Function MyEditWndProc(hWnd As HWND, dwMsg As DWord, wParam As WPARAM, lParam As LPARAM) As DWord Dim buf[255] As Byte Select Case...
by 淡幻星
2011年2月06日(日) 18:31
フォーラム: プログラミング質問板
トピック: リストビューの一番上の行を選択状態にするには
返信数: 2
閲覧数: 5985

Re: リストビューの一番上の行を選択状態にするには

> マウスで1回はクリックしないと[↓]キーでリスト内を操作できません。 > そこで、下記コードの一番下でビュー上の1行目(Index=0)を選択状態(強調表示) > で表示されるように処理をしたいです。 > Radで「選択を常に表示」にしています。 > SendMessageでどのように指定したらよいですか?。 > item.mask=LVIF_STAYE > item.state=LVIS_SELECTED > item.iItem=0 > SendMessage(hList,LVM_SETITEM,0,VarPtr(item)) > でうまく行きません リストビューの選択関数です。これ...
by 淡幻星
2009年11月16日(月) 22:46
フォーラム: プログラミング質問板
トピック: ウインドウサイズとリサイズ・イベントについて
返信数: 2
閲覧数: 4297

Re:ウインドウサイズとリサイズ・イベントについて

どういうコーディング(コード設計)をしているかによって、対処方法は様々だと
思うのですが、MoveWindow命令や、InvalidateRgn命令あたりを
調べてみてはいかがでしょうか?

たとえば、InvalidateRgn( hMainWnd, NULL, TRUE ) とすると、
窓hMainWnd全体に対して再描画を実施することが出来ます。
by 淡幻星
2009年11月01日(日) 21:23
フォーラム: 実践コードモジュール
トピック: AB上でXML(XPath)を扱うクラス
返信数: 0
閲覧数: 55948

AB上でXML(XPath)を扱うクラス

XMLを扱う場合は、MSXMLのXmlDocument あたりを 利用することが多いと思います。 しかし 。 AB上からは、これら(COM?)の呼び方がイマイチ分からない/複雑。┐(-ε-)┌ というわけで、同じI/FのクラスをAB用に作成してみました。 XPathを使う必要性に迫られたので、その辺を中心に。 極力同じメソッド名&操作性にしているので、他の言語(VC++,VB,C#等)で 本来のMSXMLを利用する際も混乱しないと思います。 # あ、特殊記号「&'<>'」は内部で勝手にエンティティと変換します。 # なので、クラス越しにXMLを読み書きする際は、そのまま直に記号を扱えま...
by 淡幻星
2009年1月18日(日) 14:27
フォーラム: 実践コードモジュール
トピック: 式の計算をする
返信数: 3
閲覧数: 20770

実数+関数(Sin,Cos等)に対応させてみました。

ここ の逆ポーランド表記への変換の続きですが、 変換ではなく式計算の実行が焦点なので、こちらに投稿いたします。 上記のリンク先で定義している、逆ポーランド表記変換クラス 「StringCalc_ReversePolishNotation」を用いて、 実数の四則算を行う関数「Calc_ReversePolishEx」です。 数値は 実数 、演算子は「+,-,*,/,^」を利用可能です。 ---< 関数の定義 >--- Function Calc_ReversePolishEx( pobjQueue As *StrQueue, ByRef xResult As Double, ppszFuncA...
by 淡幻星
2008年12月06日(土) 23:13
フォーラム: プログラミング質問板
トピック: ImageBoxだけの再描画がしたい
返信数: 13
閲覧数: 12800

イメージボックスとは?

# スレの趣旨と違うコメントになります。すみません。 RADの「イメージボックス」を、初めてBMP表示用として使おうと思い、 しかしBMPの設定方法が分からずに困っておりました。 # というか、ありがたみが分からなかったです。 # 普通にデバイスコンテキストにBMPを貼り付ければ良いじゃないかと。 このスレで、ようやく「イメージボックスとは何者か?」が分かりました。 ありがとうございました。 スレの意図とは違うことへのレスで申し訳ありませんが、 似たように迷っている方への参考に、少し書かせていただきます。  ・ABのRADの「イメージボックス」とは、「ピクチャーコントロール」のことであり、  ...
by 淡幻星
2008年6月09日(月) 07:30
フォーラム: プログラミング質問板
トピック: N88モードでBMP表示時にエラーが発生
返信数: 13
閲覧数: 7628

konisi さんの修正案で、すでに解決しているように思われますが、 名前が出てましたので、簡単ですがコメントさせていだきます。 > #この改造をしても大丈夫かどうかは淡幻星さんに聞くのが一番手っ取り早そうだと思う次第 (コード設計上は)大丈夫なはず、です。 当方でも今現在はエラーは再現していないのですが、 クラス定義の Sub GetPixelBits( hBmp As HBITMAP ) の部分を以下のように置き換えてください。 # 以前は似たようなエラーが起きてました。でも投稿した時点で修正しきったはずなんですが。。。 Sub GetPixelBits( hBmp As HBITMAP ...
by 淡幻星
2008年5月26日(月) 22:38
フォーラム: プログラミング質問板
トピック: 画像の保存
返信数: 4
閲覧数: 3318

久しぶりに来て偶々開いたスレッドで、 投稿したコードが引用されていたので喜んでみる♪ # でしゃばりすみません>konisiさん 前置きはさておき。 ちなみに描画するデバイスコンテキストのハンドルはhDCでそのhDCのもとのウィンドウ ハンドルはCambusWndです。 その場合は、以下のようにすると保存できるはずです。 ※クラスWsEasyBmpの 定義 を適当なファイルに保存し、プロジェクトに参加させておいてください。 Dim objBMP As WsEasyBmp objBMP.SetCpuSleepLevel(-1) '↑諸事情により、これを設定しないと一時的にCPU利用率が100%に...
by 淡幻星
2007年10月29日(月) 22:51
フォーラム: プログラミング質問板
トピック: 文字列検索
返信数: 2
閲覧数: 2916

M.S.さんの求めてる回答にはならないだろうことを、最初に謝っておきます。 なお、以下ではAB4を前提に書きます。 あまりじっくりコードを追っていないので、 何が原因かは分からないのですが、 CurPos=SendMessage(hEdit,EM_GETSEL,0,0) の部分は、現在のカーソル(開始)位置をCurPosに代入しようとしているんですよね? だとすれば、 SendMessage(hEdit,EM_GETSEL,VarPtr(CurPos),0) とする必要があります。 # EM_GETSEL の返り値も実はカーソル開始位置を返すんだったら、ごめんなさい。 *START の直後あた...
by 淡幻星
2007年10月27日(土) 12:28
フォーラム: アナウンス
トピック: サンプル&ヘルプ付きAB4開発支援ライブラリ
返信数: 0
閲覧数: 16469

サンプル&ヘルプ付きAB4開発支援ライブラリ

こちらのコミュニティの実践コードモジュールに投稿されているコードの いくつかを中心に、サンプル付きヘルプファイルにまとめました。 # 選択基準は、私自身の開発でよく使うコード。 このライブラリを用いることで、主に以下の点において便利になります。 ・コマンドライン引数の扱い ・ダウンロード操作 ・画像ファイル操作 ・URLやファイルパスの操作 ・ファイルの複数移動/削除/コピー、開く/保存/フォルダダイアログ操作 ・テキスト印刷 また、サンプルソースを多く載せていますので、 上記の操作が初めての方でも、とっつきやすいと思います。 興味ありましたら、私のサイトの「Download→AB淡幻ライブラ...
by 淡幻星
2007年10月14日(日) 02:23
フォーラム: アナウンス
トピック: テキスト処理プラグインを作りませんか?
返信数: 6
閲覧数: 22591

Re: 四則算について

≫つっちーさん
コメントをありがとうございます。
ほんと、数式を文字列として認識しての計算を難しいですね。


残念ながら、紹介いただいた記事は知ってました。
# 数学関数式の計算がメインのようでしたので、
# ちょっと目的が違うと思い、スルーしてました(^^;)。


なんとか、逆ポーランド記法を利用した四則算が完成しました。
参考までに、こんな感じになってます。


お互い、ABプログラミングをがんばっていきましょう。
# あ、興味ありましたら是非プラグイン作成にご参加くださいませ(笑)。