Arama butonu
Bu konudaki kullanıcılar: 1 misafir
2
Cevap
212
Tıklama
0
Öne Çıkarma
C ile Görsel Arayüzlü Program Yazma (Win32 - windows.h Library)
E
6 yıl (2083 mesaj)
Yüzbaşı
Konu Sahibi

Kendim arayıp da bulamadığım şeyleri paylaşayım dedim. Umarım faydalı olur.

Kaynak:http://www.winprog.org/tutorial/

Örneğin mesaj kutusu ile ekrana hello world yazdırabilirsiniz.


#include <windows.h>

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
MessageBox(NULL, "Merhaba Dunya", "Note", MB_OK);
return 0;
}



Mesela bir pencere açıp o pencereye tıkladığınızda programın konumunu gösteren kodlar:



#include <windows.h>

const char g_szClassName[] = "myWindowClass";

LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch(msg)
{
case WM_LBUTTONDOWN:
{
char szFileName[MAX_PATH];
HINSTANCE hInstance = GetModuleHandle(NULL);

GetModuleFileName(hInstance, szFileName, MAX_PATH);
MessageBox(hwnd, szFileName, "This program is:", MB_OK | MB_ICONINFORMATION);
}
break;
case WM_CLOSE:
DestroyWindow(hwnd);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd, msg, wParam, lParam);
}
return 0;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
WNDCLASSEX wc;
HWND hwnd;
MSG Msg;

wc.cbSize = sizeof(WNDCLASSEX);
wc.style = 0;
wc.lpfnWndProc = WndProc;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInstance;
wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
wc.lpszMenuName = NULL;
wc.lpszClassName = g_szClassName;
wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION);

if(!RegisterClassEx(&wc))
{
MessageBox(NULL, "Window Registration Failed!", "Error!",
MB_ICONEXCLAMATION | MB_OK);
return 0;
}

hwnd = CreateWindowEx(
WS_EX_CLIENTEDGE,
g_szClassName,
"The title of my window",
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT, 240, 120,
NULL, NULL, hInstance, NULL);

if(hwnd == NULL)
{
MessageBox(NULL, "Window Creation Failed!", "Error!",
MB_ICONEXCLAMATION | MB_OK);
return 0;
}

ShowWindow(hwnd, nCmdShow);
UpdateWindow(hwnd);

while(GetMessage(&Msg, NULL, 0, 0) > 0)
{
TranslateMessage(&Msg);
DispatchMessage(&Msg);
}
return Msg.wParam;
}



Bu kodlar MinGw derleyicisi ile sıkıntısız çalışıyor. Özellikle Code Blocks ile yapmanızı tavsiye ederim bu konuda kendi içinde Win32 araçları barındırıyor. Umarım faydalı olmuştur...

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil





< Bu mesaj bu kişi tarafından değiştirildi eski_nesil -- 29 Nisan 2020; 21:15:15 >

G
6 yıl (535 mesaj)
Yüzbaşı

Arayıpta bulamadım dediğin şey zaten win32 gui projesi açtığında otomatik yazılı geliyor.


Bu mesaja 1 cevap geldi.
E
6 yıl (2083 mesaj)
Yüzbaşı
Konu Sahibi

quote:

Orijinalden alıntı: Guest-8F0924900

Arayıpta bulamadım dediğin şey zaten win32 gui projesi açtığında otomatik yazılı geliyor.
İşte ben onu da bilmiyordum.



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.