气泡提示窗口

转载 2006年05月27日 09:17:00

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Memo1: TMemo;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses Commctrl;

{....}

const
  TTS_BALLOON    = $40;
  TTM_SETTITLE = (WM_USER + 32);

var
  hTooltip: Cardinal;
  ti: TToolInfo;
  buffer : array[0..255] of char;
 
{....}

 

procedure CreateToolTips(hWnd: Cardinal);
begin
  hToolTip := CreateWindowEx(0, 'Tooltips_Class32', nil, TTS_ALWAYSTIP or TTS_BALLOON,
    Integer(CW_USEDEFAULT), Integer(CW_USEDEFAULT), Integer(CW_USEDEFAULT),
    Integer(CW_USEDEFAULT), hWnd, 0, hInstance, nil);
  if hToolTip <> 0 then
  begin
    SetWindowPos(hToolTip, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or
      SWP_NOSIZE or SWP_NOACTIVATE);
    ti.cbSize := SizeOf(TToolInfo);
    ti.uFlags := TTF_SUBCLASS;
    ti.hInst  := hInstance;
  end;
end;

procedure AddToolTip(hwnd: DWORD; lpti: PToolInfo; IconType: Integer;
  Text, Title: PChar);
var
  Item: THandle;
  Rect: TRect;
begin
  Item := hWnd;
  if (Item <> 0) and (GetClientRect(Item, Rect)) then
  begin
    lpti.hwnd := Item;
    lpti.Rect := Rect;
    lpti.lpszText := Text;
    SendMessage(hToolTip, TTM_ADDTOOL, 0, Integer(lpti));
    FillChar(buffer, SizeOf(buffer), #0);
    lstrcpy(buffer, Title);
    if (IconType > 3) or (IconType < 0) then IconType := 0;
    SendMessage(hToolTip, TTM_SETTITLE, IconType, Integer(@buffer));
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  CreateToolTips(Form1.Handle);
  AddToolTip(Memo1.Handle, @ti, 1, 'Tooltip text', 'Title');

end;

{
IconType can be:

 0 - No icon
 1 - Information
 2 - Warning
 3 - Error
}

end.

基于Qt的类QQ气泡聊天的界面开发(二)

1:使用Qt下面的QListview来实现QQ类似效果,差强人意 2:使用QWebview加载html css样式来完成,发现效果不错,但是毕竟webview占用巨大的内存 3:使用QTe...
  • Esonpo
  • Esonpo
  • 2014年05月16日 14:30
  • 3478

JAVA实现气泡提示框

下面还存在一些问题. 作为timer对象与程序关闭不同步.即当程序关闭时,timer对象还在运行.应增加响应关闭事件,在里面注销timer. package cn.contorl; import j...
  • sunquan291
  • sunquan291
  • 2013年10月12日 14:19
  • 2013

JQuery实现简单实用的气泡提示插件

在程序提交后,我们需要验证并提示出错的位置,利用JQuery我们可以轻松实现气泡提示,先看效果图: 具体调用代码: input name="ipt" id="ipt" value=""...
  • dyllove98
  • dyllove98
  • 2013年04月26日 16:12
  • 1004

Delphi 三种气泡提示效果

一、方法一 说明:这个效果不好,鼠标必须放在按钮上,气泡提示才可以出来,如果鼠标在按钮的范围之外,        用回车键点击按钮也不会激活气泡提示。 unitUnit1; interfa...
  • gzxiaorou
  • gzxiaorou
  • 2015年03月22日 15:11
  • 2089

分享一个气泡提示框:JS+CSS练习

分享一个气泡提示框,练习的技术有:(1)JS响应鼠标的事件;(2)纯CSS制作三角形。 这是html: 气泡对话框 h1{ font-size: 60px; ma...
  • zilong_07
  • zilong_07
  • 2013年08月17日 00:10
  • 2303

小气泡功能在app中的两种实现方案

看到别人的app有小气泡感觉很好玩,并且他们的宽高都不超过所在单元格的宽高,其实它也没有什么神奇我们可以用两种方案来实现:控件方案和多视图方案。 第一种方案:控件法。已经实现一个页面有一个气泡的情况...
  • jia12216
  • jia12216
  • 2015年07月23日 16:59
  • 2104

Android 方便快捷简单自定义提示气泡

写在前面的话有大半年没有更新过博客了,期间发生了不少的事情,当然对于我技术成长轨迹最重要的还是人生的第一次跳槽,从以前的木蚂蚁到现在的一直播。两家都是超级完美的公司,过的都很开心。始终感恩前行,对于技...
  • David_DYK
  • David_DYK
  • 2017年02月25日 15:24
  • 1033

移动端气泡弹窗

github上的项目https://github.com/okamototk/jqm-mobile-bookmark-bubble。 下载下来后有英文,日文,法文,要对照英文自己改一个中文版的重载,然...
  • strwolf
  • strwolf
  • 2016年02月27日 11:52
  • 738

仿微信、短信、QQ等消息数目右上角红色小圆球气泡显示(基于Android XML布局文件实现)

效果图如下: 仿微信、短信、来电未接数目、QQ等消息数目右上角红色小圆球气泡显示(基于Android XML布局文件实现)。这种实现方式主要有两种途径:(1)重写View的onDraw(...
  • zhangphil
  • zhangphil
  • 2015年02月10日 14:37
  • 5366

纯QML实现聊天气泡页面(demo)

import QtQuick 2.4 import QtQuick.Window 2.0 import QtQuick.Layouts 1.1 import QtQuick.Controls 2.0...
  • u012997311
  • u012997311
  • 2017年01月29日 23:34
  • 1019
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:气泡提示窗口
举报原因:
原因补充:

(最多只允许输入30个字)