本菜鸟想用VC编个全屏图像输出并在图像指定位置设置输入框,该用哪几个函数,还有格式也帮忙写下

本菜鸟想用VC编个全屏图像输出并在图像指定位置设置输入框,该用哪几个函数,还有格式也帮忙写下,第1张

iceDispImg 随窗体大小改变显示(可满屏)

>

怎样在EXCEL中建立一个录入视窗

有两种方法可以建立视窗来实现录入资料。

一种是选择你要录入资料的区域,再通过选单“工具”->“记录单”,EXCEL就会d出一个数据录入窗体。

第二种方法是按“ALT+F11”进入VBA编辑器,在这里,你可以插入一个使用者窗体,这个可能对没有接触过程式设计的人来说有些复杂,但功能确实比前一种方法要强劲得多了。

怎样在Excel中建立一个巨集

方法一,录制巨集,

方法二,直接按ALT+F11开启VBE编辑器,写程式码

怎样建立一个PB主视窗

file-new-PB object - window

怎样在excel中建立一个工作表?

开启工作簿,在下方随便一个工作表名称上点选右键(比如Sheet1),选择 插入,选择工作表,就可以了,你可以右键给工作表改名,变颜色等等

如何用VC60在 dllmain中建立一个dialog视窗

呼叫DLL有两种方法:静态呼叫和动态呼叫

(一)静态呼叫其步骤如下:

1把你的youAppDLL拷到你目标工程(需呼叫youAppDLL的工程)的Debug目录下;

2把你的youApplib拷到你目标工程(需呼叫youAppDLL的工程)目录下;

3把你的youApph(包含输出函式的定义)拷到你目标工程(需呼叫youAppDLL的工程)目录下;

4开启你的目标工程选中工程,选择Visual C++的Project主选单的Settings选单;

5执行第4步后,VC将会d出一个对话方块,在对话方块的多页显示控制元件中选择Link页。然后在Object/library modules输入框中输入:youApplib

6选择你的目标工程Head Files加入:youApph档案;

7最后在你目标工程(cpp,需要呼叫DLL中的函式)中包含你的:#include "youApph"

注:youApp是你DLL的工程名。

(二)动态呼叫其程式如下:

动态呼叫时只需做静态呼叫步骤1

01 {

02 HINSTANCE hDllInst = LoadLibrary("youAppDLL");

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<stdioh>

#include<windowsh>

视窗过程函式

LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

{

PAINTSTRUCT ps;

HDC hDc;

char str[64]="阿浪网易部落格 :blog163/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; 定义视窗类结构体 变数

wndclasscbClsExtra=0;

wndclasscbWndExtra=0;

wndclasshbrBackground= (HBRUSH)GetStockObject(DKGRAY_BRUSH); 灰色画刷

wndclasshCursor=LoadCursor(NULL, IDC_ARROW) ; 载入标准游标

wndclasshIcon=LoadIcon(NULL, IDI_APPLICATION) ; 载入标准图示

wndclasshInstance=hInstance;

wndclasslpfnWndProc=WndProc ;

wndclasslpszClassName=szClassName;

wndclasslpszMenuName=NULL; 选单设定为NULL

wndclassstyle=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;

}

它在我的机器上是这样定义的:

#define __in __pre __valid __pre __deref __readonly

__pre等等在我的机器上定义是这样的:

#define __pre

基本上__in表示一个输入的参数,是一个编译选项,可能对于其他的编译器它不会是空的

在你的机器上应该也是和我的定义一样。

这是我之前写的一个 易语言做的取网页源码的 你可以参考下

void CMyDlg::OnOK()

{

// TODO: Add extra validation here

HINSTANCE hMod = LoadLibrary("MyDlldll");

//载入Mydlldll

typedef char (WINAPI ADD)(CString);

//添加一个函数 char 返回字符串 WINAPI ADD添加 CString 输入字符串

ADD App_Add = (ADD)GetProcAddress(hMod,"App_Add");

//添加函数名

CString str;

//设置个字符串变量

char sc;

//char 字符串 sc

CString URL;

//CString 为网址

GetDlgItemText(IDC_EDIT2,URL);

//获取IDC_EDIT2 为编辑框的ID URL 获取编辑框的内容

sc=App_Add(URL);

//App_Add 为函数 执行 获取URL网址源码, 传递参数为字符串 URL sc获取源码

str=(sc);

//sc char 转成CString

GetDlgItem(IDC_EDIT1)->SetWindowText(str);

//把转好的str输入到编辑框1ID为 IDC_EDIT1

sc=App_Add(">

delphi 的 inputBox 函数,定义于 Dialogs 单元,其代码如下:

代码的核心是调用的 InputQuery 函数:

通常情况下 InputBox 是不显示密码代替符的,如果想要显示,有以下办法:

1、修改 InputQuery 函数源代码,使其支持显示密码符。

2、直接建立一个 InputBox 的窗体。

3、使用 WinAPI 函数,查找 InputBox 的窗体,然后发送 EM_SETPASSWORDCHAR 消息。

unit Unit1;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

const InputboxMessage = WM_USER + 200;   //定义消息

type

TForm1 = class(TForm)

Button1: TButton;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

  procedure InputboxPassword(var MSG: TMessage); message InputBoxMessage;

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

{$R dfm}

procedure TForm1Button1Click(Sender: TObject);

begin

  PostMessage(Handle,InputboxMessage,0,0);             //发送消息

  inputbox('a','b','ssss')

end;

procedure TForm1InputboxPassword(var MSG: TMessage);

var

  InputForm,Hedit: THandle;

begin

  InputForm:= ScreenForms[0]Handle;

  if InputForm <> 0 then

  begin

  Hedit:= FindWindowEx(InputForm,0,'Tedit',nil);

  SendMessage(Hedit,EM_SETPASSWORDCHAR,Ord(''),0);

end;

end;

end

以上就是关于本菜鸟想用VC编个全屏图像输出并在图像指定位置设置输入框,该用哪几个函数,还有格式也帮忙写下全部的内容,包括:本菜鸟想用VC编个全屏图像输出并在图像指定位置设置输入框,该用哪几个函数,还有格式也帮忙写下、我需要向第三方的程序的文本框中赋值。代码如下,但是一直获取不到窗口的句柄、怎样在EXCEL中建立一个录入视窗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9709903.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存