منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
كتابت كود لعمل نافذه - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : كتابت كود لعمل نافذه (/showthread.php?tid=17903)



كتابت كود لعمل نافذه - hano - 04-11-16

سلام عليكم
هذا الكود بلغه c++ احتاج نفسه بس بلغه vb.net
هذا البرنامج لعمل نافذه
#include<windows.h>
LRESULT CALLBACK WindowFunc(HWND,UINT,WPARAM,LPARAM);
char szWinName[]="MyWin";
int WINAPI WinMain(HINSTANCE hThisInst,HINSTANCE hprevInst,LPSTR IpszArgs,int nWinMode)
{
HWND hwnd;
MSG msg;
WNDCLASS wcl;
wcl.cbSize=sizeof(WNDCLASS);
wcl.hInstance=hThisInst;
wcl.lpszClassName=szWinName;
wcl.lpfnWndProc=WindowFunc;
wcl.style=0;
wcl.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wcl.hIconSm=LoadIcon(NULL,IDI_WINLOGO);
wcl.hCursor=LoadCursor(NULL,IDC_ARROW);
wcl.lpszMenuName=NULL;
wcl.cbClsExtra=0;
wcl.cbWndExtra=0;
wcl.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
if(!RegisterClass(&wcl)) return 0;
hwnd=CreateWindow(szWinName,"windows 98 skeleton",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,HWND_DEBKTOP,NULL,hThlsInst,NuLL);
ShowWindow(hwnd,nWinMode);
UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WindowFunc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lparam)
{
switch(message)
{
case WM_DESTROYTongueostQuitMessage(0);
break;
default;
return DefWindowProc(hwnd,message,wParam,lParam);
}
return 0;
}


RE: كتابت كود لعمل نافذه - tryold - 04-11-16

(04-11-16, 07:43 AM)hano كتب : سلام عليكم
هذا الكود بلغه c++ احتاج نفسه بس بلغه vb.net
هذا البرنامج لعمل نافذه
#include<windows.h>
LRESULT CALLBACK WindowFunc(HWND,UINT,WPARAM,LPARAM);
char szWinName[]="MyWin";
int WINAPI WinMain(HINSTANCE hThisInst,HINSTANCE hprevInst,LPSTR IpszArgs,int nWinMode)
{
HWND hwnd;
MSG msg;
WNDCLASS wcl;
wcl.cbSize=sizeof(WNDCLASS);
wcl.hInstance=hThisInst;
wcl.lpszClassName=szWinName;
wcl.lpfnWndProc=WindowFunc;
wcl.style=0;
wcl.hIcon=LoadIcon(NULL,IDI_APPLICATION);
wcl.hIconSm=LoadIcon(NULL,IDI_WINLOGO);
wcl.hCursor=LoadCursor(NULL,IDC_ARROW);
wcl.lpszMenuName=NULL;
wcl.cbClsExtra=0;
wcl.cbWndExtra=0;
wcl.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
if(!RegisterClass(&wcl)) return 0;
hwnd=CreateWindow(szWinName,"windows 98 skeleton",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,HWND_DEBKTOP,NULL,hThlsInst,NuLL);
ShowWindow(hwnd,nWinMode);
UpdateWindow(hwnd);
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return msg.wParam;
}
LRESULT CALLBACK WindowFunc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lparam)
{
switch(message)
{
case WM_DESTROYTongueostQuitMessage(0);
break;
default;
return DefWindowProc(hwnd,message,wParam,lParam);
}
return 0;
}

كود :
#include<windows.h>
LRESULT CALLBACK WindowFunc(HWND,UINT,WPARAM,LPARAM)
Char szWinName() ="MyWin"
Integer WINAPI WinMain(HINSTANCE hThisInst,HINSTANCE hprevInst,LPSTR IpszArgs,Integer nWinMode)
Dim hwnd As HWND
Dim msg As MSG
Dim wcl As WNDCLASS
wcl.cbSize=Len(New WNDCLASS)
wcl.hInstance=hThisInst
wcl.lpszClassName=szWinName
wcl.lpfnWndProc= AddressOf WindowFunc
wcl.style=0
wcl.hIcon=LoadIcon(NULL,IDI_APPLICATION)
wcl.hIconSm=LoadIcon(NULL,IDI_WINLOGO)
wcl.hCursor=LoadCursor(NULL,IDC_ARROW)
wcl.lpszMenuName=NULL
wcl.cbClsExtra=0
wcl.cbWndExtra=0
wcl.hbrBackground=CType(GetStockObject(WHITE_BRUSH), HBRUSH)
If Not RegisterClass(&wcl) Then
    Return 0
End If
hwnd=CreateWindow(szWinName,"windows 98 skeleton",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,HWND_DEBKTOP,NULL,hThlsInst,NuLL)
ShowWindow(hwnd,nWinMode)
UpdateWindow(hwnd)
Do While GetMessage(&msg,NULL,0,0)
TranslateMessage(&msg)
DispatchMessage(&msg)
Loop
Return msg.wParam
LRESULT CALLBACK WindowFunc(HWND hwnd,UINT message,WPARAM wParam,LPARAM lparam)
Select Case message
Case WM_DESTROYTongueostQuitMessage(0)
default
Return DefWindowProc(hwnd,message,wParam,lParam)
End Select
Return 0



RE: كتابت كود لعمل نافذه - silverlight - 04-11-16

من الواضح ان الكود الخاص بك مصمم للعمل علي الويندوز 98
لكن في الدوت نت يمكنك تعريف Form باستخدام Dim F as new Form ثم تقوم بتحديد ابعاده , وتحديد الايقونة التي ستظهر مع الفورم  و تحديد مكان ظهور الفورم علي الشاشة ثم تقوم بإظهاره ثم و بعد انتهائك من استخدام الفورم تقوم بإغلاقه


لكن لو كان الهدف من الكود ان يعمل علي الويندوز 98 يجب هنا تحديد نوعية OperatingSystem لأن هذا سوف يؤثر في نوعية Themes التي ستظهر علي شاشة الكمبيوتر