Win32API質問箱 Build127

■ このスレッドは過去ログ倉庫に格納されています
2021/12/09(木) 21:32:56.60ID:sYLpmj89
Win32APIについての質問はこちらへどうぞ。

■注意
・質問する前にMSDNライブラリやPlatformSDK、Google等で検索しましょう。
・日本語版MSDN Online Libraryは不完全です。
 英語版( http://msdn.microsoft.com/en-us/library/ )の利用推奨。
・APIフックなど高度な事をしたい場合はできるだけAdvenced Windowsを読みましょう。
・言語特有の問題やIDE、MFCやVCLなどの質問はそれぞれの言語や開発環境スレで

■過去スレ
Win32API質問箱 Build126
https://mevius.5ch.net/test/read.cgi/tech/1588339011/
Win32API質問箱 Build125
https://mevius.5ch.net/test/read.cgi/tech/1551247748/
Win32API質問箱 Build124
https://mevius.5ch.net/test/read.cgi/tech/1510395780/

■関連スレ
Visual Studio 2020 Part1 https://mevius.5ch.net/test/read.cgi/tech/1634166667/
Visual Studio 2019 Part7 https://mevius.5ch.net/test/read.cgi/tech/1634178709/
Visual Studio 2017 Part7 https://mevius.5ch.net/test/read.cgi/tech/1558179898/
【C++】 DirectX初心者質問スレ Part41 【C】 https://mevius.5ch.net/test/read.cgi/tech/1521786252/
2023/04/03(月) 15:37:01.22ID:lsCbs8KW
>>584
GetObject()なんか多相そのものやん
2023/04/03(月) 15:39:17.90ID:lsCbs8KW
すまん関数名間違えた
SelectObject()だ

GetObject()はオブジェクト指向と手続き型の切り替えだね
2023/04/03(月) 15:56:54.48ID:ORXHufFt
Win32APIの基本構造そのものがイベントドリブンのメッセージ駆動なのでオブジェクト指向を土台にしている
Windowsのマルチタスクはオブジェクト指向で成り立っているだろ
2023/04/03(月) 16:40:18.30ID:lsCbs8KW
そうそう
ウインドウプロシージャのcaseなんか典型的だな
590デフォルトの名無しさん
垢版 |
2023/04/03(月) 16:48:57.33ID:WoF7SnyS
>>575
>そもそもMFCはCUIのライブラリから始まっている。

doubt
2023/04/03(月) 16:51:01.36ID:WoF7SnyS
>>577
でたらめ言うなよ
ボケが始まってるんだな爺さん
ばあさんかも試練が
2023/04/03(月) 16:53:48.85ID:WoF7SnyS
>>580
おまいは Windows 3.1 の知識が抜け落ちておるな
2023/04/03(月) 16:57:17.99ID:WoF7SnyS
>>584
しね
2023/04/03(月) 16:58:53.51ID:WoF7SnyS
>>585
むしろ Win(32以前も)API / Win32API がオブジェクト指向で
MFC の方がオブジェクト指向出来ていなかったんだよ
だから判ってる香具師はみんな MFC は使わなかった
使ってたのは馬鹿だけ
2023/04/03(月) 17:23:19.13ID:aHgelLEB
>>594
APIについてはその通りだが
MFCがOOPでないという主張には
賛成しかねる

下手なところがあるのは俺も認めるが
原理主義者の言いなりである必要はない
2023/04/03(月) 18:20:11.47ID:6F7Nd+C2
MFCとかけて、C++と解きます
その心は、オブジェクト指向ではあるけど、なりきれていない

これでどうでっしゃろ
2023/04/03(月) 18:32:53.99ID:hrmFy8ir
MFCには良い思い出が無いのである
2023/04/03(月) 21:17:54.58ID:NUuZ0KjY
>>580
すげぇ、「ゲームの歴史」?
2023/04/03(月) 21:57:09.76ID:pspdaLIR
GUIの無い単純なアプリならまだしも、それなりのGUIを持つアプリは
MFCを使ったほうが楽にアプリを作れるし、出来たコードも読み易い

確かに最初はMFCは取っ付き難いから、そこで挫折した人が
>>590-594みたいな事を言い出すんだろうなあ
2023/04/03(月) 23:21:42.85ID:6c3bFFXO
>>599
そんなことは無いと思うが
Win32APIをちゃんと知っていればMFCなんて使う理由が全く無いし
MFC関連のDLL何かも入れないといけないし単に開発効率がおちるだけ
実際当時Windowsアプリの仕事を結構やったけどMFCを採用していた所は少なかった
たまたまそういう場所ばかり行ってた可能性はあるがMFC何て使うなよって当時から思ってたよw
2023/04/03(月) 23:43:57.61ID:hWVK11qf
でも世の中的に勝利したのはMFCだよね
俺もATL/WTLでいいじゃんとは思ったけど
でかいライブラリも整備されてりゃそれなりに便利だからね仕方ないね

>>578
PersonalWorkBenchってのでFortranやったような気がするんだが
今ググっても全然出てこないな
2023/04/04(火) 00:40:08.89ID:3PHQjkjE
VB→.NET の流れがGUI開発の勝ち組というなら分からなくもないが
MFCは・・・
2023/04/04(火) 06:32:29.81ID:sHU2LbpJ
>>600
>Win32APIをちゃんと知っていればMFCなんて使う理由が全く無いし
WindowProcに case WM_… をだらだら書かなくても済むだけでも大きな利点
>MFC関連のDLL何かも入れないといけない
ユーザー層やアプリの配布形態に応じて、必要ならMFCをStaticLibraryでリンクしてしまえば良い

>>602
>VB→.NET の流れ
社内ツールとかならともかく、それこそユーザーにVB入れさせるなんて問題外でしょ
大量のデータ処置を行うようなアプリでは処理速度も遅いし
一般販売されてるアプリでVBで作られてるものなんてある?
2023/04/04(火) 07:27:41.42ID:w5B314gc
DLL hell, OCX hell とかVB案件の負の遺産なんじゃなかろうか
2023/04/04(火) 07:35:33.06ID:GxsMOWHT
>>600
>MFC関連のDLL何かも入れないといけないし単に開発効率がおちるだけ

昔Win32+CだけでDLLの追加が要らないよう頑張ってみたこともあるけど辛かったね。
C++の機能使ってしまうと結局CランタイムDLLが必要になるし。
2023/04/04(火) 10:14:15.35ID:OZYsYc62
>>601
だよな
8086しかりwindowsしかりMFCしかり
技術的に劣っていてもデファクトになると
好むと好まざるに依らずそれ関係の仕事が来る

元々BSD使いだった俺がwindowsに転向したのもメシのため
2023/04/04(火) 11:34:31.40ID:7A3Dl4jZ
DLL便利じゃん
プラグインで機能後付けもこれのおかげだし
2023/04/05(水) 08:56:03.63ID:PNvz4EJs
>>603
BtoCよりBtoBの方が物は多いと思うが
2023/04/05(水) 10:12:22.16ID:xBlgsSX7
金融界隈では未だにVB6が現役だし
MSにしては大成果だったと言える
2023/04/05(水) 15:23:21.24ID:MSpbiXL9
ANAのシステムもミズポと同じ所が造ったんかねぇ
2023/04/05(水) 20:05:04.25ID:WIXvpPAe
C++/WinRTを使ってあげて…
2023/04/18(火) 08:15:18.90ID:F395+kgU
Windows API インデックス
https://learn.microsoft.com/ja-jp/windows/win32/apiindex/windows-api-list

Windows API を使用すると、各バージョンに固有の機能を利用しながら、すべてのバージョンの Windows で正常に実行されるアプリケーションを開発できます。
(これは以前は Win32 API と呼ばれていたことに注意してください。
Windows API という名前は、16 ビット Windows でのルートと 64 ビット Windows でのサポートをより正確に反映しています)。
2023/04/18(火) 08:32:02.79ID:hm8pjCa5
日本語たけど日本語じゃないの
614デフォルトの名無しさん
垢版 |
2023/04/26(水) 20:51:37.42ID:A/LukVPn
Windows11でPrintDlg使って印刷すると1度目は印刷できるけど
2度目はPrintDlg()呼ぶと反応無しになるのはなんか間違ってるのかな
レジストリ弄ってLegacyなダイアログにしとくと印刷できる、あと管理者権限でプログラム実行して
印刷も勝手にLegacyなダイアログになるので印刷できるんだけど

試しに、VC2022で新規プロジェクトで雛形ちょっと弄って試してもやっぱり
2度目のPrintDlg()呼び出しで無反応になっちゃうんだっけど
debuggerで見てもPrintDlg()呼び出しでエラーも何も出てこなくてわからない
2023/04/28(金) 08:28:43.45ID:dRuFEUWm
10で平気なら11のバグだな
窓板の11バグ多すぎワロタスレに報告しとけよ
616デフォルトの名無しさん
垢版 |
2023/04/28(金) 10:51:05.85ID:pksuSfee
閉じてから印刷
2023/04/30(日) 17:14:32.74ID:dQsz62eN
PrintDlgってcomdlg32.dllだよな
comdlg32.dllはバグで有名なやつじゃないか
2023/04/30(日) 19:59:15.10ID:Aup++SJD
Microsoftの直接的な関係者ではなく、TSF (Text Services Framework)の仕組みを知り尽くしている人を募集中。成功報酬あり。
katayama.hirofumi.mz@gmail.com
619デフォルトの名無しさん
垢版 |
2023/04/30(日) 20:06:36.85ID:/hwg+Moy
Firefoxのにゃるるにコンタクトすれば?
あと成功報酬ではなく労働報酬あるいはコンサルタント報酬であるべきだよ
2023/04/30(日) 21:05:43.46ID:Aup++SJD
にゃるるってダレ?
検索しても見つからないよ
621デフォルトの名無しさん
垢版 |
2023/04/30(日) 21:19:58.80ID:8kv4t+8E
書き込めなかった、ローマ字で検索して
にゃるる が地球にいたころ

って言うか自分で勉強検索してたら最も頻繁に出てくる
2023/04/30(日) 21:52:27.43ID:Aup++SJD
ありがと
2023/04/30(日) 21:55:44.21ID:9BNVTRHB
地球にいないのでは無理では?
2023/04/30(日) 22:05:27.13ID:AaWD86jI
報酬が相場より2桁くらい少なそう。
2023/05/02(火) 21:18:50.29ID:koHs32mY
WaitOnAddressってアドレスの値が比較対象と違う値に変化したら自動的に起きるっていう魔法みたいなものではないんだね
呼んだ瞬間に比較対象と違ったら即返る、同じだったら後ほど変わったとしてもWakeByAddress系で通知しなきゃ起きないっていう原始的なイベントと言うほど変わらない感じか
2023/05/03(水) 14:28:28.65ID:wz1HqF7D
directoryなら監視してくれるけど
https://www.youtube.com/watch?v=hKLBPXg8oik
呼んだ瞬間に比較対象と違ったら即返る
同じだったら返らない
っていうのを期待してる?
2023/05/03(水) 20:05:13.46ID:v7V26Uwz
>>626
その挙動は既にWaitOnAddressに組み込まれてる訳だけど
対象アドレスの値が変わったら通知とか無しに自動的に戻ることを期待していた
そうじゃなくてマニュアルでWakeByAddress呼ばなきゃいけないからイベントとそこまで変わらんなぁと
まあハンドル作らずに済む点で手軽ではあるけど
2023/05/03(水) 20:45:04.91ID:Kv12u2jn
8で追加されたAPIは頭悪い
OSが頭悪ければAPIも頭悪いという当然の帰着
2023/05/03(水) 21:24:23.86ID:+bgC2i5O
APIを使うだけならWin32よりWinRTの方が簡単でしょ
2023/05/03(水) 21:27:08.93ID:XU1+7Xhm
本当にそうか?
2023/05/03(水) 21:36:14.09ID:+bgC2i5O
>>630
ウィンドウ表示するコードはこれだけ

#include <windows.h>
#include <winrt/Microsoft.UI.Xaml.h>

using namespace winrt;
using namespace Microsoft::UI::Xaml;

int WINAPI wWinMain(HINSTANCE, HINSTANCE, LPWSTR, int)
{
init_apartment();
Application::Start([](auto&&) { Application(); Window window; window.Activate(); });
return 0;
}
2023/05/04(木) 00:16:09.16ID:4Uvo6CUb
ラッパー系は手をつけにくいなあ、MFCやOWLの悪夢が蘇る
便利そうに見えて、覚えることが増えるだけだったり
見えざる制約が足枷になったり、バージョン管理が面倒だったりと
やむを得ない場合は仕方ないけど
2023/05/04(木) 00:34:52.44ID:qlZGMdPb
WinRTってMS的にはWin32と同列の扱いだけど、WinRTは内部でWin32を使ってるのだろうか?
2023/05/04(木) 05:10:21.07ID:P5ZkmciJ
COMを焼き直して名前変えただけと言えばいいのか
ただCOMの利点だったIDispatchで適当な言語から扱うみたいな事ができないうんこです
2023/05/04(木) 07:28:00.92ID:Nm4VxhU5
>>632
確かに恐ろしい部分はあるかも
2023/05/04(木) 07:33:59.15ID:Nm4VxhU5
WinRTはC#の情報ばかりでC++の情報が少ないから苦労するかも
その点Win32は情報が多いからいいね
2023/05/06(土) 10:58:22.01ID:SadRj80b
>>628
WaitOnAddressは利便性目的ではなく手軽さ+パフォーマンスが要点だからそうとも言えない
Thread立ち上げて立ち上げたスレッドがある地点まで到達するまで待ちたいみたいなちょっとしたシーンでは結構便利
パフォーマンス的にもイベント待ちに比べて1000倍近く早かったはず
2023/05/11(木) 18:47:03.56ID:FTM2vWjW
Chromeのタイトルバーに「^」の文字を上下反転させたボタンがあって押すとミニウィンドウ的なのが開くのですが、このボタンを実装したいのですがどうしたらできますか?
Chromiumのソースコード見てもどこに該当コードがあるかわかりませんでした
c言語で実装したいです
2023/05/11(木) 18:55:17.65ID:OsVl9AaP
タブを検索ボタンか。ソースをTab Searchで検索すれば出てくるんじゃないの
2023/05/11(木) 19:52:12.33ID:FTM2vWjW
検索してみました
ttps://github.com/search?q=repo%3Achromium%2Fchromium%20tab%20search&type=code
タブを開いた時の挙動などはTypescriptで書かれているようでした
ttps://github.com/chromium/chromium/blob/cd5fe35a69d697dd48ad34d5670d090afcdc57be/chrome/browser/resources/tab_search/app.ts#L560
既存のアプリにc/c++で手軽にタイトルバーにボタンをつけてポップアップウィンドウが開けてそこでボタンなどを選択できるような方法を知っていますか?
2023/05/11(木) 20:34:55.74ID:Tud0+/yk
手軽ではないと思うが DwmExtendFrameIntoClientArea を使えばできそう
https://learn.microsoft.com/ja-jp/windows/win32/dwm/customframe
2023/05/16(火) 23:21:04.68ID:bBMeTJtZ
LoadLibraryに渡されたlpLibFileName引数をどうにか呼ばれたdllmainから取得する事って出来ないかな
32bitならスタックフレーム遡ってLdrLoadDllを呼んだところの第3引数のスタックのUNICODE_STRINGから手に入れる事に成功したが
64bitだとfastcallになっちゃって第4引数まではレジスタ渡しされるからこの手法も通用しなくて詰んだ
kernel32やntdllのアセンブラ決め打って取得することは出来るだろうけどそこまではしたくない
2023/05/16(火) 23:26:32.45ID:bBMeTJtZ
ちなみになぜGetModuleFileNameではダメかというとハードリンクやシンボリックリンクのときにある条件下においてlpLibFileNameとGetModuleFileNameで一致しないケースが出てくるため
2023/05/17(水) 01:27:34.09ID:LUtEOwg/
>>643
その >ある条件下 で

TCHAR PathBuffer[BUFFSIZE];
GetMappedFileName (GetCurrentProcess(), (void *)hModule_DLL, PathBuffer, BUFFSIZE);
で、lpLibFileNameと同じパス(NT形式)が返ってくる?それともエラー?

試してないので結果を教えて
2023/05/17(水) 09:18:00.69ID:J+vPZ/2W
>>644
GetMappedFileNameだとリンク先の実体ファイル名が返ってきた
ある条件下というのは既に同じリンク先のdllがロード済みの場合に違う名前のリンクからロードしようとすると同一の物と判定され先客の方のhModuleが帰ってくるためGetModuleFileNameも先にロードしたほうの名前になる
C:\mod.dll ← 実体
C:\link0.dll ← シンボリックリンク
C:\link1.dll ← シンボリックリンク

最初にC:\link0.dllをLoadLibraryした場合、以降C:\link1.dllをロードしGetModuleFileNameをしてもC:\link0.dllが帰ってくる
GetMappedFileNameだと常にC:\mod.dllだった
646644
垢版 |
2023/05/17(水) 10:25:43.22ID:fHvb3D7j
>>645
確認ありがとう、参考になった
こみ入った環境なんだね
所望の動作でなくて残念だけど、他の手段に心当たりがない...
2023/05/18(木) 10:34:13.93ID:gc1pBp/r
pe iat import address table
辺りを弄れば
鶏卵かもしらんけど
2023/05/18(木) 12:21:08.02ID:Wn2vmhFl
load されたときの名前からパラメータ参照ファイルな .ini ファイルの名を変えたいって感じなのかな?

>>645 のケースだと
C:\link0.dll でロードした場合には C:\link0.ini を参照し
以降 C:\link1.dllをロードした場合には C:\link1.ini を参照したい と
この場合 単に同じ実体でリンクカウントが1増えるだけであっても区別したい ということか
2023/05/18(木) 12:49:23.99ID:gc1pBp/r
DLLはメモリに直接ロードする方法もあるから
不正を正したいって意図なら無力だよ
2023/05/18(木) 23:43:11.96ID:qdON7ber
1. FindFirstFileでリンクか実体かを判定
2. VirtualAllocExで実行可領域のメモリを確保
3. ReadFileでDLLを読み込む
4. PEヘッダのIMAGE_OPTIONAL_HEADER64.ImageBase+IMAGE_SECTION_HEADER.VirtualAddressに各セクションをコピー
5. DLL内のImportLibraryを同じ手順で再帰的にロード
6. DLL_PROCESS_ATTACHとDLL_THREAD_ATTACHでDllMain呼び出し
2023/05/19(金) 14:28:26.73ID:FHSnxikS
Win32APIのGUIに著作権ってある?
自分用ならまぁ好きにしたらって程度だと思うけど
ボタンとか目コピで丸パクリしてアプリケーションとして配布したらダメなのかな
2023/05/19(金) 14:50:21.97ID:D8eITJ2Q
腐ったバナナの皮ですらアートとして認められるからな
許諾なしなら著作持ってる奴次第
2023/05/19(金) 20:19:56.03ID:c7UfD3kr
ReactOSはかなり似てるけどね
アイコンはTangoのを使ってるけど、形的なものはそっくりだな
テーマ機能があるから、訴えられても簡単に変えられるし、大した問題でもないが
2023/05/19(金) 20:39:13.36ID:OUfVoMDF
https://monolith-law.jp/corporate/design-ui-copyright-law

レイアウトや色の使い方ぐらいじゃ侵害にはならないだろうって判断と
あとは「思想又は感情を創作的に表現」したものであるかが関わる
それと著作権法に触れなくても意匠法にに触れる場合はあるとさ

>>651
複雑なデザインのボタンがあってそれを丸コピしたなら危ないけど
WinAPI程度のボタンだと「レイアウトや色の使い方」の範疇に思う
2023/05/19(金) 20:46:16.58ID:IeFHnOxn
>>651
あの大きさでは目コピって言いわけしても無理だろw
90%一致できるw
2023/05/19(金) 22:40:34.19ID:9QPyu6+L
悪目立ちしなきゃ大丈夫って感じかな
どうもありがとう
素直に使いこなせれば変なことしなくていいんだけど
2023/05/20(土) 13:22:54.16ID:QfLlK72x
>>654
Windows自体がMotifのパクリ
2023/05/20(土) 15:28:47.38ID:GL6RWJiS
あの立体的に飛び出たボタンは誰が最初にやったかを少し調べてみたら、やっぱりMotifが最初にやった可能性が高いな
Windowsも旧Mac OSもMotifより前にリリースされてるけど、ボタンは黒い線で縁取られてるだけだからね
Motifがリリースされた1989年の直後、1990年にWindows3.0がリリースされてボタンが立体的になった
ただ、リリース直後のMotifの見た目は確認出来なかった
659デフォルトの名無しさん
垢版 |
2023/05/21(日) 05:50:22.86ID:wNzdA/GS
誰も突っ込まないけどWin32APIのGUIってなんだよ?
2023/05/21(日) 09:39:48.68ID:WLjUQB8s
GDI32.DLL
つうかWindowsはGUIだろ
2023/05/21(日) 12:08:47.18ID:+3uTL0QF
面倒なことしなくてもDLLからアイコンロードすればいいんだけどな
2023/05/21(日) 15:30:11.58ID:4p2tw/ut
>>659
CreateWindow()とか知らないの?
663デフォルトの名無しさん
垢版 |
2023/05/21(日) 17:54:29.28ID:BWx6f6vD
CreateWindow() のどこがGUIなんだって話なんだけど。
GUIを構成するためのAPIの一つではあるがGUIと言われても違和感しかない。
2023/05/21(日) 18:18:37.48ID:Ifo/fxoU
皆行間読んで回答してるんだよ
そういうのを読み取れずにいちいち突っかかってくるお前に違和感しかないわ
665デフォルトの名無しさん
垢版 |
2023/05/21(日) 20:46:54.79ID:BWx6f6vD
行間が読み取れてないわけでも突っかかったわけでもなくて
気になる人いないの?って問うただけなんだけどね。
2023/05/21(日) 20:55:29.63ID:hFZuZI8a
GUIじゃなくてGUIパーツね
それを指摘してどうすんの?
2023/05/21(日) 21:06:29.15ID:WLjUQB8s
GUIのデザインパクっていいっすか?だろ?
左上にシステムメニューと閉じるボタン
右上にアイコン化、全画面化がWindows3.1のGUIだ
2023/05/21(日) 22:29:14.29ID:5ynrmfbS
よく読めよ
ボタンのビットマップとかのGUIパーツについて言ってるだろ
GUIのメソッドについてはパクるまでもなくAPI呼び出せば自然にそうなるから
2023/05/22(月) 00:44:58.78ID:Ff1Yirur
それwin32api関係なくね?
2023/05/22(月) 02:26:03.44ID:Zf+cjPeC
comctl32もwin32apiだと思う
671デフォルトの名無しさん
垢版 |
2023/05/22(月) 11:33:40.49ID:Omf9ofNg
Win32API の話ならム板
Win32API の著作権の話ならマ板
Win32APIのGUI?(ツールのデザイン)? の著作権の話なら著作権板
だろうな
遠すぎる
672デフォルトの名無しさん
垢版 |
2023/05/22(月) 22:29:16.30ID:DLlnfzHn
うるせー馬鹿
2023/06/01(木) 18:53:13.24ID:hCiag/wO
winsqlite3って勝手に最新版のsqlite3でstdcallにしてコンパイルして上書きしても問題起こらないんかな
674デフォルトの名無しさん
垢版 |
2023/06/06(火) 23:10:55.17ID:VJFPZJIc
テキストカーソルインジケーターをアプリに組み込みたいんですが、どこかにサンプルコードないですか?
2023/06/06(火) 23:42:13.94ID:kMZUPc/s
>>674
>>618: 蟻人間
似た状況の話に見えるどnyaruruはどうなったんだ?
2023/06/06(火) 23:46:10.64ID:XV1AZyoR
>>674
キャレットはXORペンで描くのがコツだね。
2023/06/06(火) 23:50:08.39ID:XV1AZyoR
システム標準のキャレットを使うならCreateCarat、ShowCaratなどを使う。

https://learn.microsoft.com/ja-jp/windows/win32/menurc/using-carets
2023/06/07(水) 13:08:22.78ID:xTW5tL3j
>XOR
灰色背景だと見えなくなるから賛同できないわ
2023/06/07(水) 13:24:44.47ID:RsLfWKsz
標準のエディットコントロール内に居るキャレットって XOR 描画してるよね
2023/06/07(水) 15:03:13.28ID:BwWz5oN8
たいていは白色がテキスト入力で灰色は入力不可の部分だからいんじゃない
2023/06/07(水) 23:21:33.35ID:HdTy5x+f
読み取り専用とかで灰色背景はよくあるけど
682デフォルトの名無しさん
垢版 |
2023/06/08(木) 21:52:05.26ID:xczGeZ8q
キャレットもそうだけど、最近なんか範囲選択表示で、半透明の矩形上に重ねるだけのエディタ多くね?
あれ見づらいんだよなぁ・・・フルスクラッチで作るなら確かに横着できて楽なんだろうけど
2023/06/08(木) 22:08:34.87ID:asQ3aAAN
エディットコントロール自作はやめたほうがいい

IMEが機能してるように見えても、音声入力や音声入力編集、読み上げで制限があるのが大半だから
キャレットもOSの強調表示機能があるし、知らないところで多機能を要求される
2023/06/09(金) 00:33:21.65ID:HaYoNzhW
自作エディットコントロールわざわざ作るときって巨大ファイル編集したいとかじゃないの
OSが勝手に後付けしたアクセシビリティ機能とか知らんでいいよ
2023/06/09(金) 06:30:59.27ID:J1Oq+Y/w
>>684
縦表示も独自実装、フルスクラッチでないけど

縦書きエディタTATEditorはwxWidgetsカスタムのようだ
https://qiita.com/496_/items/ebfb1e5eefaa9aa8f5bf
https://www.youtube.com/watch?v=_qnk_fNQvCo
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況