


Win32 SDK基础(七)之如何创建一个窗口的子窗口的案例
什么是子窗口?当我们在点击Windows窗口的某个按钮时,比如点击窗口的关闭按钮,往往会弹出一个窗口来提示相关信息,类似这种弹出窗口就是主窗口的子窗口。我们创建子窗口时,也是使用CreateWindow或者CreateWindowEx API。
我们来看下CreateWindow的函数原型:
HWND WINAPI CreateWindow( _In_opt_ LPCTSTR lpClassName, _In_opt_ LPCTSTR lpWindowName, _In_ DWORD dwStyle, _In_ int x, _In_ int y, _In_ int nWidth, _In_ int nHeight, _In_opt_ HWND hWndParent, _In_opt_ HMENU hMenu, _In_opt_ HINSTANCE hInstance, _In_opt_ LPVOID lpParam );
这里我们只介绍下第三个参数dwStyle,设置窗口的风格。我们在本专栏创建的第一个Windows窗口时,将该值设置为WS_OVERLAPPEDWINDOW,这个设置的意思是允许窗口重叠。我们想要创建子窗口,也是通过设置窗口的WS_CHILD风格实现。而需要显示子窗口,还需要添加WS_VISIBLE风格。若想以弹出的方式显示子窗口(类似关闭确认的对话框),需要添加WS_POPUP风格。
我们在本专栏介绍创建窗口的代码之上,在主函数中增加如下代码:
int APIENTRY wWinMain(_In_ HINSTANCE hInstance, _In_opt_ HINSTANCE hPrevInstance, _In_ LPWSTR lpCmdLine, _In_ int nCmdShow) { // TODO: Place code here. g_hInstance = hInstance; BOOL nRet = Register("Main", WndProc); if (!nRet) { MessageBox(NULL, "注册失败", "Infor", MB_OK); return 0; } HWND hWnd = CreateMain("Main", "window"); CreateWindow("Main", "子窗口", WS_OVERLAPPEDWINDOW|WS_CHILD|WS_VISIBLE|WS_POPUP, CW_USEDEFAULT, CW_USEDEFAULT, 400, 200, hWnd, NULL, g_hInstance, NULL); Display(hWnd); Message(); return 0; }
注意第16行代码,就是我们利用CreateWindow创建子窗口,运行程序,效果如下:
Atas ialah kandungan terperinci Win32 SDK基础(七)之如何创建一个窗口的子窗口的案例. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Apl asli Windows 11 (seperti File Explorer) dan apl cangkerang lain menggunakan penjuru bulat dan elemen Reka Bentuk Fasih (seperti Akrilik) secara lalai. Selain sudut bulat, satu lagi ciri reka bentuk penting Windows 11 ialah bahan seperti mika, yang menjajarkan warna latar belakang aplikasi dengan desktop. Mika serupa dengan akrilik tetapi berfungsi sedikit berbeza. Seperti yang diterangkan oleh Microsoft, Bahan Windows Mica mencipta "hierarki warna dengan menjajarkan latar belakang dengan aplikasi

Windows 11 SDK baharu untuk binaan 22523 mendedahkan bahawa Microsoft sedang membangunkan kesan kabur baharu untuk Windows 11. Kesan ini dipanggil Tabbed, dan merupakan tambahan kepada Akrilik dan Mika. DWMWA_SYSTEMBACKDROP_TYPE baharu dalam SDK 22523, API Win32 awam untuk Mica, Acrylic dan campuran "tab" baharu mereka yang pelik: pic.twitter.com/dbsu7ZFiIi — It's All Back (@StartIsBack) 15 Disember 2021 Tersedia dalam SDK berikut Contoh permohonan

Perisian antivirus kadangkala boleh memaparkan amaran yang menyatakan Trojan/win11.casdet rfn pada komputer riba Windows 32. Ia menunjukkan bahawa PC dijangkiti malware Trojan, menyebabkan ia tidak berfungsi. Nasib baik, terdapat beberapa cara yang mungkin untuk menyelesaikan masalah ini, seperti yang dijelaskan di bawah. Selain itu, anda mungkin berminat dengan panduan terperinci kami tentang sama ada cdn.districtm.io ialah pop timbul/virus/perisian hasad atau tidak. Apakah Trojan/win32.casdet rfn? Trojan/win32.casdet rfn ialah jangkitan virus Trojan yang teruk yang boleh mengatasi sistem dan membunuh prosesnya, menjadikannya mudah

Perbezaan antara win32 dan win64 ialah: 1. win32 merujuk kepada persekitaran 32-bit sistem pengendalian Microsoft Windows, dan win64 merujuk kepada versi 64-bit sistem pengendalian Microsoft Windows, yang lebih stabil dan lebih pantas daripada 32 -versi bit; 2. win32 menyokong sehingga 2G memori, win64 mesti mempunyai lebih daripada 4G memori;

Kembali pada Ogos 2021, Microsoft berjanji bahawa OneNote pada Windows 10 dan Windows 11 akan menerima satu siri kemas kini ciri utama dalam beberapa bulan akan datang, kerana gergasi teknologi itu menyatukan berbilang versi aplikasi pengambilan nota menjadi satu bahagian daripada pelanggan. OneNote telah mengalami banyak perubahan sejak beberapa tahun yang lalu. Pada tahun 2018, apabila Microsoft benar-benar mahu orang ramai menggunakan versi UWP OneNote, syarikat itu berhenti menggabungkan versi asal dan kaya ciri OneNote dengan aplikasi Office yang diprapasang. Sebaliknya, Microsoft hanya menyediakan klien UWP dan menambah ciri baharu untuk versi moden. Microsoft kemudiannya berubah

Kuasai kemahiran penting untuk pembangunan menengah Java Hikvision SDK Pengenalan: Dengan perkembangan pesat teknologi maklumat, sistem pengawasan video telah digunakan secara meluas dalam pelbagai bidang. Sebagai penyedia penyelesaian pengawasan video domestik yang terkemuka, produk dan teknologi Hikvision sentiasa menduduki kedudukan penting dalam pasaran. Untuk memenuhi keperluan projek yang berbeza, Hikvision menyediakan SDK untuk pemaju menjalankan pembangunan sekunder. Artikel ini akan memperkenalkan beberapa kemahiran penting untuk menguasai pembangunan sekunder Java Hikvision SDK, dan melampirkan contoh kod yang sepadan. 1. Fahami Hikvision

WindowsAppSDK ialah satu set alat dan API yang boleh digunakan oleh pembangun dalam aplikasi Windows mereka untuk menyediakan kefungsian "konsisten" merentas pelbagai peranti menggunakan Windows 10 (versi 1809 dan lebih baru) dan Windows 11. Sangat penting untuk memahami bahawa ia tidak menggantikan jenis aplikasi sedia ada seperti .NET atau Windows SDK, ia hanya menyediakan set alat API bersatu yang boleh digunakan untuk melengkapkan aplikasi sedia ada anda. Hari ini, Microsoft mengeluarkan versi 1.2 Windows App SDK dengan banyak ciri baharu. Sorotan keluaran ini mungkin pembangun pihak ketiga

Nama penuh sdk ialah "Kit Pembangunan Perisian", yang bermaksud "kit pembangunan perisian" dalam bahasa Cina Ia adalah satu set alat yang disediakan oleh pengilang platform perkakasan, sistem pengendalian (OS) atau bahasa pengaturcaraan. SDK membantu pembangun perisian dalam mencipta aplikasi untuk platform, sistem atau bahasa pengaturcaraan tertentu. SDK asas biasanya terdiri daripada pengkompil, penyahpepijat dan antara muka pengaturcaraan aplikasi (API), tetapi mungkin juga termasuk kandungan lain, seperti: dokumentasi, perpustakaan, persekitaran masa jalan/pembangunan, alat ujian/analisis, protokol rangkaian, dsb.
