mfc实现只要鼠标进入对话框中的一个区域就出现tooltip的提示信息,当鼠标离开时提示信息马上消失?急..

2024-05-05 06:57

1. mfc实现只要鼠标进入对话框中的一个区域就出现tooltip的提示信息,当鼠标离开时提示信息马上消失?急..

假设在CDlg**中有一控件IDC_EDIT_A,想要鼠标指向该控件时提示,步骤如下:

1、CDlg**头文件中声明成员变量
CToolTipCtrl m_tooltip;

2、CDlg***::OnInitDialog() 中创建并设置参数
m_tooltip.Create(this);

//CToolTipCtrl与控件关联
m_tooltip.AddTool(GetDlgItem(IDC_EDIT_A), TTS_ALWAYSTIP);//当鼠标指向IDC_EDIT_A控件显示提示
//若如是句柄可以用FromHandle(hwnd)替换 GetDlgItem(IDC_EDIT_A)

//文字颜色
m_tooltip.SetTipTextColor(RGB(0,0,255));

//鼠标指向多久后显示提示,毫秒
m_tooltip.SetDelayTime(TTDT_INITIAL, 10); 

//鼠标保持指向,提示显示多久,毫秒
m_tooltip.SetDelayTime(TTDT_AUTOPOP, 30000); 

//设定显示宽度,超长内容自动换行
m_tooltip.SetMaxTipWidth(200);

3、重写PreTranslateMessage,增加以下内容:
if(m_tooltip.m_hWnd!=NULL) 
{
 m_tooltip.RelayEvent(pMsg);
}

4、在需要的地方动态更新tip内容
m_tooltip.UpdateTipText(str, FromHandle(hwnd));

mfc实现只要鼠标进入对话框中的一个区域就出现tooltip的提示信息,当鼠标离开时提示信息马上消失?急..

2. axure7.0中,鼠标移入某一面板会有tips提示,移出后提示消失,怎么实现

如图所示,进行鼠标移入和移出是提示文字面板的隐藏和出现。

3. MFC怎么实现这个功能?把鼠标移动到某一区域就会显示出类似于帮助的框框来。

这个是一个tolltips 。实现的方式也很多,你可以百度下 mfc tip 就行。//
可以参考下面这个地址:
http://www.cnblogs.com/lingyun1120/archive/2011/11/09/2243279.html

MFC怎么实现这个功能?把鼠标移动到某一区域就会显示出类似于帮助的框框来。

4. 如何获取鼠标是否进入控件(按钮tips显示

作者:黎哲_海情
答:现用commandbutton控件举例,其他控件一样:
1.首先声明两个API函数//获得焦点Function ulong SetCapture(ulong hWnd) Library "USER32.DLL"//释放焦点Function BOOLEAN ReleaseCapture() Library "USER32.DLL"
2.自定义用户事件鼠标在控件上移动mousemove(EventID号为pbm_mousemove),鼠标进入控件mousewithin,鼠标离开控件mousewithout。
3.声明一些Instance变量
boolean ib_mousecaptured//控件是否已经获得焦点
boolean ib_mousewithin//鼠标是否进入控件
integer ii_losecapture=0//控件是否要失去焦点
4.在mousemove事件中写入
if ii_losecapture  1 then
if not ib_mousecaptured then//没有捕获鼠标移动
//捕获鼠标移动
SetCapture(handle(this))
ib_mousecaptured = TRUE
else //已经捕获鼠标移动
if xpos < 0 or ypos < 0 or xpos  width or ypos  height then//鼠标不在该控件上//释放鼠标ReleaseCapture()
ib_mousecaptured = FALSE
//触发mousewithout事件
this.post event mousewithout()
ib_mousewithin=false
ii_losecapture=0
//this.of_set()elseif not ib_mousewithin then
//触发mousewithin事件
this.post event mousewithin()
ib_mousewithin=trueend ifend ifend ifelseii_losecapture=ii_losecapture + 1end if
5.最后你就可以在mousewithin和mousewithout中写入你想要的效果或事件。
of_set()可能是重置某些值的操作源码天空

5. 实现鼠标移到按钮上时出现相应的提示

用控件的tooltip属性。
可以动态绑定,也可以静态直接写入。
========================================
那就详细点
比如你有一个textbox,id位txt
在它的属性里面有一个tooltip,你在里面直接输入要显示的值就可以,还可以在程序里动态的写
比如,页面或form初始化时,写txt.tooltip = "浮动提示";就ok了。

实现鼠标移到按钮上时出现相应的提示

6. vc怎么控制ToolTips的显示和隐藏

1.当编写一个win32 console application时,当运行此类程序的时候默认情况下会有一个类似dos窗口的console窗口,但是有的时候我们只想在程序中运行一段功能代码,不希望显示这个console窗口,让代码执行完毕之后程序自动退出.下面就介绍一下,如何隐藏win32 console application的console窗口 .
2.因为此种方法是通过设置编译器的链接开关来实现,所以来看一下编译器的链接开关选项(也就是linker选项).
3.首先来看一下linker的 /subsystem 选项该选项的语法形式如下:
/subsystem:{console|efi_application|efi_boot_service_driver|
efi_rom|efi_runtime_driver|native|posix|windows|windowsce}
[,major[.minor]]
4.这个链接选项告诉操作系统如何运行可执行文件
5.console:  win32 字符模式应用程序,此种类型的应用程序在运行的时候会产生一个类似dos窗口的控制台窗口,如果在应用程序的主函数为main()或者wmain(),在默认情况下该应用程序就是一个控制台应用程序.
6.extensible firmware interface 和cpu具体架构相关的一个参数选项,并不常用,在这里暂不详细介绍.
7.native;设备驱动器选项,如果/driver:wdm选项被设定的话,该链接选项(native)就为默认选项.

8.posix: 在windows nt 种运行在posix子系统上的应用程序.
9.windows:该类型的应用程序不产生console窗口,该类型的应用程序的窗口由用户自己创建,简而言之就是一个标准的win32 application,其入口地址为winmain()函数或者wwinmain()函数的地址,如果在应用程序种定义的主函数为winmain或者wwinmain,在默认情况下该应用程序就是一个win32 application !windowsce:运行在windows ce上的应用程序major and minor (optional):主版本号和次版本号,该选项为可选,该选项0~65535之间的十进制整数,从上面可以看出如果建立一个win32 console application的话,linker的/subsystem选项应该为console,可以在vc开发环境的project->setting->link->project option中看到.
10.接下来再看看应用程序是如何运行的.
11.用vc编写的程序,运行的时候是需要 cc 运行库支持的.当运行一个c/c 程序的时候链接器会首先寻找应用程序的启动函数,例如:
如果建立了一个console程序的话,编译器得链接开关会是以下这种形式
/subsystem:console /entry:maincrtstartup (ansi)
/subsystem:console /entry:wmaincrtstartuup (unicode)
如果建立了一个win32 application,编译器得链接开关则会是一下形式
/subsystem:windows /entry:winmain (ansi)
/sbusystem:windows /entry:wwinmain (uincode)
12.上面的两种形式可以再project->setting->link->project option中看到,上面的subsystem和entry并不需要都设置,如果你只设置了/subsystem:console的话,那么默认的entry开关在默认情况下应为/entry:maincrtstartup.反之,如果在应用程序中定义了main函数的话,默认情况下,你/subsystem开关应该为/system:console.
13.在默认情况下/subsystem 和/entry开关是匹配的,也就是console对应maincrtstartup或者wmaincrtstartup.windows对应winmain或者wwinmain.但是也可以通过手动改动的方式使他们不匹配.例如我们可以这样改动
#pragma comment( linker, /subsystem:windows /entry:maincrtstartup ) // 设置入口地址 int main(int argc, char* argv[])
{
    messagebox(null, hello, notice, mb_ok);
return 0;
}

14.在默认情况下链接器看到/subsystem下是windows选项的时候,它会自动寻找winmain或者wwinmain.
但强制指定入口地址,这样运行程序的时候默认的console窗口就会隐藏.
15.上面是在代码中使用#pragma指令来设置,还有一种就是直接在开发环境的
project->setting->link->project option中手工改动.
16.总结如下:
a:如果console程序已经写好了,不能改了,也可以。写一个API程序,不要画窗口,然后用CreateProcess调用写好的console程序,把属性设成SW_HIDE即可。
b:不能用控制台来写(CONSLOE),要用WINMAIN做入口就可以了,不画窗口,别人就都看不见了. 
c:如果是console程序,用API函数GetStdHandle()获得控制台程序的窗口句柄,然后在隐藏窗口
d://这一句隐藏控制台 
#pragma   comment(linker,   "/subsystem:\"windows\"   /entry:\"mainCRTStartup\""   ) 
要写控制台程序就用这个.在控制台程序中隐藏控制台窗口.

7. C#中在listview中由于不能使用tooltips控件!所以请问怎样可以让鼠标移动到某一项上面时显示提示信息啊

某一项有没有 鼠标事件啊 如果有的话 在鼠标移入事件里面 获取 鼠标坐标 然后 把tooltip显示出来就好  鼠标移出 就把tooltips hide()

C#中在listview中由于不能使用tooltips控件!所以请问怎样可以让鼠标移动到某一项上面时显示提示信息啊

8. 如何让鼠标移上去,table中某个td正下方显示隐藏div?

#one{
position:relative;
}
#one.tableto{
width:100px;height:50px; position:absolute;top:0;left:100px;
}
#one:hover .tips{
display:block;
}




****
鼠标移到TD显示