VC实现类似VB中的LinkLabel功能
VC实现类似VB中的LinkLabel功能
//VB里面有个LinkLabel,VB中的Label在VC中式CStatic,但是VC中CStatic没有类似LinkLabel的功能。可以自己
//添加一点代码来实现:
//不知道为什么IDC_HANDD一定要自己定义一下
#define IDC_HAND MAKEINTRESOURCE(32649)
//处理鼠标移动
void CAppNonameDlg::OnMouseMove(UINT nFlags, CPoint point)
{
CRect rc;
GetDlgItem(IDC_STATIC_COLOR)->GetWindowRect(&rc);
ScreenToClient(&rc); //坐标转换
if(rc.PtInRect(point)) //是否在静态文本区域范围内
SetCursor(LoadCursor(NULL, IDC_HAND));
else
SetCursor(LoadCursor(NULL, IDC_ARROW));
CDialog::OnMouseMove(nFlags, point);
}
//处理鼠标安下,这是只要在文本区域上,一直都是IDC_HAND
void CAppNonameDlg::OnLButtonDown(UINT nFlags, CPoint point)
{
CRect rc;
GetDlgItem(IDC_STATIC_COLOR)->GetWindowRect(&rc);
ScreenToClient(&rc);
if(rc.PtInRect(point))
SetCursor(LoadCursor(NULL, IDC_HAND));
CDialog::OnLButtonDown(nFlags, point);
}
//处理鼠标安下,这是只要在文本区域上,同样一直都是IDC_HAND
void CAppNonameDlg::OnLButtonUp(UINT nFlags, CPoint point)
{
CRect rc;
GetDlgItem(IDC_STATIC_COLOR)->GetWindowRect(&rc);
ScreenToClient(&rc);
if(rc.PtInRect(point))
{
SetCursor(LoadCursor(NULL, IDC_HAND));
//打开指定链接
ShellExecute(NULL, "open", "http://hi.csdn.net/vb2010", NULL, NULL,
SW_SHOWNORMAL);
}
CDialog::OnLButtonUp(nFlags, point);
}
相关文档:
使用VC编写VB使用DLL
一、在函数定义前必须加上extern "c",_stdcall关键字。
extern "C" int _stdcall Sum(int x,int y)
{
return x+y;
}
二、DLL的.def文件中必须加上入口函数
EXPORTS
sample @1
  ......
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
cn.Open "Provider=OraOLEDB.Oracle.1;Persist Security Info= ......
郁闷,我使用的这个空间的IDC商竟然每隔一段时间就要检测绑定的域名是否再未提交备案列表中,如果是就删除,但是却不检测我是否提交了备案,按照他们说法删除域名一天后才能再次绑定,否则这一天内绑定了到下次检测就会再删除。这样我就不停的在后台看,看是否被删除,如果被删除,就再把域名绑定上去,;(很受伤!
于是用V ......
其实这个问题我很早很早以前就发现了,只是一直没留意,也不在意。今天无意中又用VB写了一个程序全部使用NTDLL导出函数编写,又出现了这样的情况,这样就由不得我不注意了,经过我的反复测试以及反汇编验证,证实了vb6_sp6在调用某些API(测试的应该有很多API存在这样的问题)存在内存泄露问题或者是函数调用失败。请大家先看 ......
今天用编程语言Visual Basic(VB)写出自己的记事本!记得自从上次的一个VB打造简单计算器后就再也没有写一些小程序了!今天呢,写一个简单的记事本程序吧!
工具:一台计算机(电脑)。(配置不做什么要求,现在的机器应该没有配置很低的吧!只要能运行Visual Basic 6.0就行!)
&nbs ......