- mBeta
-
怎样在EXCEL中建立一个录入视窗
有两种方法可以建立视窗来实现录入资料。
一种是选择你要录入资料的区域,再通过选单“工具”->“记录单”,EXCEL就会弹出一个数据录入窗体。
第二种方法是按“ALT+F11”进入VBA编辑器,在这里,你可以插入一个使用者窗体,这个可能对没有接触过程式设计的人来说有些复杂,但功能确实比前一种方法要强劲得多了。
怎样在Excel中建立一个巨集
方法一,录制巨集,
方法二,直接按ALT+F11开启VBE编辑器,写程式码
怎样建立一个PB主视窗
file-new-PB object - window
怎样在excel中建立一个工作表?
开启工作簿,在下方随便一个工作表名称上点选右键(比如Sheet1),选择 插入,选择工作表,就可以了,你可以右键给工作表改名,变颜色等等
如何用VC6.0在 dllmain中建立一个dialog视窗
呼叫DLL有两种方法:静态呼叫和动态呼叫.
(一).静态呼叫其步骤如下:
1.把你的youApp.DLL拷到你目标工程(需呼叫youApp.DLL的工程)的Debug目录下;
2.把你的youApp.lib拷到你目标工程(需呼叫youApp.DLL的工程)目录下;
3.把你的youApp.h(包含输出函式的定义)拷到你目标工程(需呼叫youApp.DLL的工程)目录下;
4.开启你的目标工程选中工程,选择Visual C++的Project主选单的Settings选单;
5.执行第4步后,VC将会弹出一个对话方块,在对话方块的多页显示控制元件中选择Link页。然后在Object/library modules输入框中输入:youApp.lib
6.选择你的目标工程Head Files加入:youApp.h档案;
7.最后在你目标工程(*.cpp,需要呼叫DLL中的函式)中包含你的:#include "youApp.h"
注:youApp是你DLL的工程名。
(二).动态呼叫其程式如下:
动态呼叫时只需做静态呼叫步骤1.
01 {
02 HINSTANCE hDllInst = LoadLibrary("youApp.DLL");
03 if(hDllInst)
04 {
05 typedef DWORD (WINAPI *MYFUNC)(DWORD,DWORD);
06 MYFUNC youFuntionNameAlias = NULL;
07 youFuntionNameAlias 函式别名
08 youFuntionNameAlias = (MYFUNC)GetProcAddress(hDllInst,"youFuntionName");
09 youFuntionName 在DLL中宣告的函式名
10 if(youFuntionNameAlias)
11 {
12 youFuntionNameAlias(param1,param2);
13 }
14 FreeLibrary(hDllInst);
15 }
16 }
显式(静态)呼叫:
LIB + DLL + .H,注意.H中dllexport改为dllimport
隐式(动态)呼叫:
DLL + 函式原型宣告,先LoadLibrary,再GetProcAddress(即找到DLL中函式的地址),不用后FreeLibrary
如何在Dll中建立一个带有Web Browser的视窗
dll不拥有任何资源,在DLL中生成一个CWnd的例项,该视窗归载入DLL的APP所有。
怎样用mfc建立一个静态视窗?
位址列属性设定为不可编辑就可以了。位址列也是一个控制元件做的啊,它也是有属性的
怎样使用MFC建立一个视窗类
建立一个完整视窗要经历的步骤:
1)设计一个视窗类;
2)注册视窗类;
3)建立视窗;
4)显示及更新视窗。
第一步:
windows 已经为使用者定义了一个完整的视窗类,使用者只需要将各个属性填满既可以。视窗类是一个 结构体,其定义如下:
typedef struct _WNDCLASS{
UINT style;class style
WNDPROC lpfnWndProc;
int cbClsExtra;
int cbWndExtra;
HANDLE hInstance;
HICON hIcon;
HCURSOR hCursor;
HBRUSH hbrBackground;
LPCTSTR lpszMenuName;
LPCTSTR lpszClassName;
}WNDCLASS;
第二步:
用RegisterClass(&wndclass)来定义的视窗注册。
第三步:建立视窗
1)定义一个控制代码,然后用CreateWindow()来为控制代码赋值。函式用法参看MSDN。建立视窗必须依据已经宣告并且已经注册的视窗型别来建立。
HWND CreateWindow(
LPCTSTR lpClassName,定义的视窗类名
LPCTSTR lpWindowName,视窗的名字,将会在标题栏上显示出来的
DWORD dwStyle,视窗的风格(视窗的外观模式和功能按钮等等)
int x,视窗初始位置ws_usedefault
int y,同上
int nWidth,视窗的宽度,可以用ws_usedefault
int nHeight,视窗高度,可以用ws_usedefault
HWND hWndParent,父视窗的控制代码,单一视窗则设定为空
HMENU hMenu,选单的控制代码,如果没有选单则将这个控制代码设定为空
HINSTANCE hInstance,由系统进行分配标识
LPVOID lpParam一般设定为空
);
第四步:显示视窗
呼叫ShowWindow()函式来显示视窗。
ShowWindow(
HWND hWnd,要显示的视窗的控制代码
int nCmdShow显示视窗的模式,如:最大化最小花显示
)
第五步:更新视窗
在显示视窗的函式呼叫完毕以后呼叫UpdateWindow()来对窗体进行更新
UpdateWindow(hwnd);这个函式没有并不影响讯息产生。
讯息回圈
MSG msg;定义了一个讯息结构体变数
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
/*
GetMessage(
LPMSG lpMsg,
讯息结构提的指标,无需对这个讯息结构提的内部成员初始化,
这个只需将定义的结构体的地址传到这里
HWND hWnd,
视窗控制代码,指明要获得的是那个视窗的讯息,如果要获取所有视窗的讯息则
定义为NULL
UINT wMsgFilterMin,
用来指定要从讯息伫列里边取得的最小值,
UINT wMsgFilterMax
用来指定要从讯息伫列里边取得的最大值,
/
这两个引数用来限制GETMESSAGE 在讯息伫列里边的取值范围,
以去处调一些确定不感兴趣的讯息
if要从讯息伫列中所有的讯息中提取的话则两个引数均设定为
零
/
);从呼叫程式执行绪讯息伫列中取讯息
*/
有了建立视窗的整个流程以后,现在就开始定义视窗过程,用WindowProc()
LRESULT CALLBACK WindowProc(/*函式名字可以更改,但是引数不允许改变*/
HWND hwnd,
UINT uMsg,
WPARAM wParam,
LPARAM lParam
);引数和讯息结构提的前四个引数相同,事实上系统在呼叫视窗过程函式
的时候自动将讯息结构体的前四个引数传递到视窗过程
描述在d盘视窗中建立一个资料夹
双击 “我的电脑”(或计算机),开启后双击“本底磁碟D”,然后,滑鼠随便在d盘中选择一个位置,单击右键,选择“新建”,选择“资料夹”,这时就在D盘出现了一个“新建资料夹”的资料夹,此时你还可以将资料夹的名字改为你需要的名称。
怎么建立一个视窗
这个程式过程中,主要是查阅MSDN文件, 这个文件很实用。
方法如下:
#include<stdio.h>
#include<windows.h>
视窗过程函式
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
PAINTSTRUCT ps;
HDC hDc;
char str[64]="阿浪网易部落格 :blog.163./wenxianliang08@126/";
switch(message)
{
case WM_PAINT:
hDc=BeginPaint(hwnd,&ps);
TextOut(hDc,100, 100, str, strlen(str));
EndPaint(hwnd, &ps);
break;
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hwnd, message, wParam, lParam);
break;
}
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance, 当前执行例项的控制代码
HINSTANCE hPrevInstance, 先前例项的控制代码,基于Win32开发,预设为NULL
LPSTR lpCmdLine, 命令列
int nCmdShow 视窗显示模式
)
{
char szClassName[64]="阿浪部落格(视窗类)"; 初始化视窗类的名称
WNDCLASS wndclass; 定义视窗类结构体 变数
wndclass.cbClsExtra=0;
wndclass.cbWndExtra=0;
wndclass.hbrBackground= (HBRUSH)GetStockObject(DKGRAY_BRUSH); 灰色画刷
wndclass.hCursor=LoadCursor(NULL, IDC_ARROW) ; 载入标准游标
wndclass.hIcon=LoadIcon(NULL, IDI_APPLICATION) ; 载入标准图示
wndclass.hInstance=hInstance;
wndclass.lpfnWndProc=WndProc ;
wndclass.lpszClassName=szClassName;
wndclass.lpszMenuName=NULL; 选单设定为NULL
wndclass.style=CS_HREDRAW|CS_VREDRAW;
if(!RegisterClass(&wndclass)) 注册所初始化的视窗类
{
MessageBox(NULL,"视窗类注册失败!","讯息提示",MB_OK);
return 1;
}
HWND hwnd;
char WindowName[64]="温先良(视窗名)"; 视窗名
hwnd=CreateWindow(
szClassName,
WindowName,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT, CW_USEDEFAULT,
500,400,
NULL,
NULL,
hInstance,
NULL
); 建立所注册的视窗类
if(!hwnd)
{
MessageBox(NULL, "视窗建立失败", "讯息提示", MB_OK);
return 1;
}
ShowWindow(hwnd, SW_SHOWNORMAL);
UpdateWindow(hwnd);
MSG msg;
while(GetMessage(&msg, hwnd, 0, 0)) 从讯息伫列里获取讯息
{
TranslateMessage(&msg); 讯息转换
DispatchMessage(&msg); 讯息传送到视窗过程函式
}
return 0;
}