Win32API質問箱 Build80at TECH
Win32API質問箱 Build80 - 暇つぶし2ch159:デフォルトの名無しさん
09/06/19 17:52:26
>>153
できますね

160:デフォルトの名無しさん
09/06/19 18:15:27
GetRegionDataで地道に作り直すしかないんじゃないか

161:デフォルトの名無しさん
09/06/19 19:07:35
>>158-159
具体的にアドバイスした方が良いと思われる。

162:デフォルトの名無しさん
09/06/19 19:13:29
┏━┓
┃  ┃
┗━┛┏━┓
     ┃  ┃
     ┗━┛
の上記二つのリージョンを作ったら
CombineRgnで混ぜればいいよ

163:デフォルトの名無しさん
09/06/19 19:45:46
>>162
リージョンの合成じゃなくて、分離する方法を聞いていると思われる。

164:デフォルトの名無しさん
09/06/19 21:21:38
>>163
あ、すまん勘違いしてた
リージョンから分離したいなら、GetRegionDataから作り直す
ビットマップとかから作るなら、CreateRectRgnとCombineRgn組み合わせればいいよ

165:デフォルトの名無しさん
09/06/19 21:25:54
リージョンというより、自己交差しているパスを交点で切り離せれば、
そこからリージョンを作ればいいような気がするな。
ま、APIでそういうことが出来るのかどうかは分からないが。

166:デフォルトの名無しさん
09/06/19 21:28:16
海外の身体改造は半端ねえからなあ

眼球くりぬいてLED埋め込んだ奴
URLリンク(vimeo.com)

167:デフォルトの名無しさん
09/06/19 21:30:49
>>166
何処の誤爆だ?
怖くて見れない

168:デフォルトの名無しさん
09/06/19 21:33:02
ただ光らせるために片目捨てるとかアホだろw

169:デフォルトの名無しさん
09/06/19 21:33:47
中盤グロかった・・・

170:デフォルトの名無しさん
09/06/19 22:11:57
誤爆はほっとけ

171:デフォルトの名無しさん
09/06/19 22:15:42
スレチを承知で聞かせて貰う
グロイ?

172:デフォルトの名無しさん
09/06/19 22:17:47
義眼にLED仕込んだバカのビデオだよ

173:デフォルトの名無しさん
09/06/19 22:20:47
術前→設計→術後だから血とかはないな

174:デフォルトの名無しさん
09/06/19 22:23:56
>>172-173
サンクス。最初の画面で嫌悪感出て見るの辞めた
零見たいにサーモグラフィー埋め込めば良いのに

175:デフォルトの名無しさん
09/06/19 23:31:53
話がそれたが、回答としては出尽くしたのか?
他にアイデアがあれば書いといてあげて。

176:デフォルトの名無しさん
09/06/19 23:33:14
自演してんなよ

177:デフォルトの名無しさん
09/06/19 23:36:28
おれは175=165だけど?

178:デフォルトの名無しさん
09/06/19 23:57:57
れぎおん

179:デフォルトの名無しさん
09/06/20 02:31:11
無理。

180:153 ◆D9KRK95MhY
09/06/20 10:55:44
皆さん回答ありがとうございます。
164さんのビットマップから作る方法を検討してみます。

181:デフォルトの名無しさん
09/06/20 13:46:04
IMEの制御について詳しい方いらっしゃいますか?
漢字仮名まじりの文をIMEを使って全部ひらがなに逆変換したいんですが、
漢字仮名まじりの文をIMEに設定する関数 ImmSetCompositionString(himc, SCS_SETSTR, str, length, NULL, 0)が
MSIME2002では成功するのにATOK2006では失敗します。
一応MSIMEでは動くものが作れたんですが、ぶっちゃけクソ変換なので、できればATOKを活用したいのです。

何か別の方法がないでしょうか?
ネットで調べても変換操作をしたあとの再変換の方法ならあるんですが、
漢字仮名まじりの文をIMEに設定して逆変換する方法で、ATOKで成功するものが見つけられないんです。

182:デフォルトの名無しさん
09/06/20 13:51:17
大抵の企業でATOKなんてわざわざ入れてないのでおk

183:デフォルトの名無しさん
09/06/20 13:59:03
世間一般の企業がどうとかは関係なくて、自分のところのデータ変換処理に必要なんです。
ATOKだと文脈を理解して適切な読み仮名に変換してくれるはずなので、それに期待してるのです。

184:デフォルトの名無しさん
09/06/20 14:04:21
「詳細なテキストサービスのサポートをプログラムのすべてに拡張する」がONならOFFにしてみるとか?
これでうまくいっても、PGでの対応方法は知らないけど。

185:デフォルトの名無しさん
09/06/20 15:39:29
>>184
それはOFFになってましたね。
試しにONにしてみると、MSIMEでも逆変換できなくなってしまいました。。。
「詳細なテキストサービスをオフにする」のチェックも変えましたが、こちらは変化なしでした。

Immで始まるIME制御APIは自分が試した大部分でATOKとMSIMEの間で互換性がありました。
しかしIMEとは無関係のところからもってきた文を逆変換することに関してだけは互換性が無いようなのです。
ATOK12ではできたという話がネット上にありましたが、ATOK2006はその方法ではダメでした。
難しいですね。

186:デフォルトの名無しさん
09/06/20 16:34:41
コントロールの座標をクライアントから見たい座標で取得する方法でいいのないな?

今はコントロールとクライアントの二つをGetWindoxRectでスクリーン座標から強引に求めてるが
どうも違う

187:デフォルトの名無しさん
09/06/20 16:43:25
>>186
MapWindowPoints関数を使え。

188:デフォルトの名無しさん
09/06/20 16:59:52
ウェブのMSDNって「戻り値」の説明だけごそーり消えてるんだけどなんなんだあれ?
直す気ないのかな?

189:デフォルトの名無しさん
09/06/20 17:00:31
関数とprintfとかとAPIはどっちが遅いの?

190:デフォルトの名無しさん
09/06/20 17:01:21
>>181
ImmGetConversionList でいけるはず

191:デフォルトの名無しさん
09/06/20 17:26:14
>>190
IME2003以降では使えないけどな

192:デフォルトの名無しさん
09/06/20 17:47:12
>>189
自分で調べろ

193:デフォルトの名無しさん
09/06/20 17:48:37
FF11 のいずれかを含むページは 10752 ページ中、 164 ページ見つかりました。

194:デフォルトの名無しさん
09/06/20 17:48:59
誤爆した

195:デフォルトの名無しさん
09/06/20 18:01:34
>>189
OSで応答する分APIが遅い

196:デフォルトの名無しさん
09/06/20 18:52:31
>>187
有難うございます!!

197:デフォルトの名無しさん
09/06/20 18:54:46
>>195
は?

198:デフォルトの名無しさん
09/06/20 19:11:46
システムフックするソースとか見ると、DLL側で良く

#pragma data_seg(".ShareForHook")
HHOOK MouseHook = NULL;
#pragma data_seg()

を眼にするんだが、何でこれをする意味が良く分からない。
単純にHHOOK MouseHook = NULL;じゃ駄目なの?

199:デフォルトの名無しさん
09/06/20 19:15:11
#pragma data_segってのはプロセス間での共用メモリスペースを作るオプションでな
その中で宣言された変数はどこのプロセスで変更しても全てのプロセスに伝わるわけだ

何で必要なのかはCallNextHookExの第一引数見れば分かる
2000以降は要らないんだっけかな

200:デフォルトの名無しさん
09/06/20 19:15:12
理由もちゃんと書いてあるだろ

201:デフォルトの名無しさん
09/06/20 19:26:23
>>197
ライブラリの関数は同じ実行ファイル内にリンクされるのでコストは自分と定義した関数と同じ
APIの場合は、IPCを通じてOS内部にある関数本体のアドレスに引数を渡して結果を受け取るためコスト増

202:デフォルトの名無しさん
09/06/20 19:31:04
ああこいつ馬鹿か

203:デフォルトの名無しさん
09/06/20 19:34:53
素直に頭が悪くて理解できないと言えよw

204:デフォルトの名無しさん
09/06/20 19:36:31
printfもOSのAPI内部で呼ぶっつーの馬鹿

205:デフォルトの名無しさん
09/06/20 19:37:02
自分で定義した関数で、想定されうるあらゆるデバイスに対して出力できる処理かいてるのか

206:デフォルトの名無しさん
09/06/20 19:38:39
>>199
有難う!
MSDNでのSetWindowsHookEx関数では
>グローバルフックは共有リソースであり
と書いてあった
正直まだ解せない部分もあるけど、システムフックの最低限必要のマナーなのね

207:199
09/06/20 19:43:48
ああ、理解力なさそうだね

208:デフォルトの名無しさん
09/06/20 20:15:17
>>189=>>195=>>201=>>203

209:デフォルトの名無しさん
09/06/20 21:39:29
>>190
ImmGetConversionListを使う方法を教えていただき、どうもありがとうございました。
結論からすると、やはり逆変換はMSIME2002ではできて、ATOK2006ではできなかったです。
ソースコードは下記をそのまま使いました。
URLリンク(athomejp.com)

ATOKの2006は鬼門バージョンなんですかねw

210:デフォルトの名無しさん
09/06/20 21:54:53
まぁ、そんなもんじゃね?

あとは、実際の動作をエミュレートするかだな。

211:デフォルトの名無しさん
09/06/20 21:56:13
プログラム書いていていつも思うのは
LeftとRightとかBeginとEndとか
長さが違うのが無性に腹立つんだが
欧米人には美的感覚ってものが無いのか?

212:デフォルトの名無しさん
09/06/20 22:02:25
>>211
まずプログラミング言語ありきってか

213:デフォルトの名無しさん
09/06/20 22:12:34
外人さんのデモ見てると、プロポーショナルフォントだったりするしな・・・

214:190
09/06/21 00:06:52
>>209
2006ではだめですか。ATOK2005は確か出来たはずなんですが… 残念です。


215:sage
09/06/21 01:02:46
自分は漢字の読み仮名の取得には
IFELanguageを使ってるが。



最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch