文档章节

简单实现系统托盘 - 回复 "闪" 的问题

涂孟超
 涂孟超
发布于 2014/09/26 15:30
字数 299
阅读 12
收藏 0

问题来源: http://www.cnblogs.com/del/archive/2008/01/17/1043226.html#1548952

使用 Delphi 提供的 TTrayIcon 类, 两三行程序甚至不写程序(设计时选择几下)即可实现.

设计时的准备工作:
1、添加 TTrayIcon、TPopupMenu 控件, TPopupMenu 用于托盘的右键菜单.
2、随意给 TPopupMenu 添加些菜单项.

代码文件:

unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    TrayIcon1: TTrayIcon;
    PopupMenu1: TPopupMenu;
    aaa1: TMenuItem;
    bbb1: TMenuItem;
    ccc1: TMenuItem;
    procedure FormCreate(Sender: TObject);
    procedure TrayIcon1DblClick(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  {指定图标, 这里是用程序相同的图标; 也可在设计时选择, 还可以指定一个图标组, 再用 IconIndex 切换}
  TrayIcon1.Icon := Application.Icon;
  {指定右键菜单}
  TrayIcon1.PopupMenu := PopupMenu1;
  {使之可见}
  TrayIcon1.Visible := True;
end;

{给图标添加到双击事件}
procedure TForm1.TrayIcon1DblClick(Sender: TObject);
begin
  ShowMessage('OnDblClick');
end;

end.

 
 
 
 
 

 

 

  

窗体文件:

object Form1: TForm1
  Left = 0
  Top = 0
  Caption = 'Form1'
  ClientHeight = 206
  ClientWidth = 339
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  OnCreate = FormCreate
  PixelsPerInch = 96
  TextHeight = 13
  object TrayIcon1: TTrayIcon
    OnDblClick = TrayIcon1DblClick
    Left = 152
    Top = 88
  end
  object PopupMenu1: TPopupMenu
    Left = 216
    Top = 88
    object aaa1: TMenuItem
      Caption = 'aaa'
    end
    object bbb1: TMenuItem
      Caption = 'bbb'
    end
    object ccc1: TMenuItem
      Caption = 'ccc'
    end
  end
end

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2009/06/05/1496857.html

涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
关于 Ubuntu 系统托盘 & QQ for Linux

前言:腾讯太坑爹,linux版QQ一直不更新。。。 问题描述:话说换到Ubuntu 12.10,Web QQ 一直用着不爽,下了个 linuxqqv1.0.2i386 (注:虽然有deb的,但装不了,只能下这个linux通用版了),...

Lucups
2013/03/29
1K
11
VC托盘程序的简单实现

以下是网上看到的一个实现VC托盘的程序,好像只适用于对话框程序。经本人简单整理。 一、托盘简介 所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那...

wwl33695
2015/06/09
0
0
Electron构建跨平台应用Mac/Windows/Linux

入门基础笔记,这里记录一下 一、前言 和 都可以用前端的知识来开发桌面应用。 和 起初是同一 个作者开发。后来种种原因分为两个产品。一个命名为 (英特尔公司提供技术支持)、 另一命名为 (G...

Poetries
01/22
0
0
从零到一,用 Electron 开发桌面效率工具

Electron 已经不算新技术,最早是 github 从 Atom 编辑器衍生出来的框架。通过编写 Javascript, HTML, CSS 能快速编译出跨系统的桌面 app。Electron 的出现使得作为前端开发工程师的我们输出...

HelKyle
03/24
0
0
Python:桌面气泡提示功能实现

在写桌面软件时,通常会使用到托盘上的泡泡提示功能,让我们来看看使用Python如何实现这个小功能。 一、Linux系统: 在Linux上,实现一个气泡提示非常简单,使用GTK实现的pynotify模块提供了...

tinydot
2016/10/10
50
0

没有更多内容

加载失败,请刷新页面

加载更多

面试官,Java8 JVM内存结构变了,永久代到元空间

在文章《JVM之内存结构详解》中我们描述了Java7以前的JVM内存结构,但在Java8和以后版本中JVM的内存结构慢慢发生了变化。作为面试官如果你还不知道,那么面试过程中是不是有些露怯?作为面试...

程序新视界
7分钟前
7
0
读书笔记:深入理解ES6 (八)

第八章 迭代器(Iterator)与生成器(Generator) 第1节 循环语句的问题   在循环、多重循环中,通过变量来跟踪数组索引的行为容易导致程序出错。迭代器的出现旨在消除这种复杂性,并减少循...

张森ZS
8分钟前
6
0
Elasticsearch 实战(一) - 简介

官腔 Elasticsearch,分布式,高性能,高可用,可伸缩的搜索和分析系统 基本等于没说,咱们慢慢看 1 概述 百度:我们比如说想找寻任何的信息的时候,就会上百度去搜索一下,比如说找一部自己喜...

JavaEdge
12分钟前
3
0
【jQuery基础学习】11 jQuery性能简单优化

本文转载于:专业的前端网站➦【jQuery基础学习】11 jQuery性能简单优化 关于性能优化 合适的选择器 $("#id")会直接调用底层方法,所以这是最快的。如果这样不能直接找到,也可以用find方法继...

前端老手
21分钟前
5
0
重磅发布 | 全球首个云原生应用标准定义与架构模型 OAM 正式开源

导读:2019 年 10 月 17 日,阿里巴巴合伙人、阿里云智能基础产品事业部总经理蒋江伟(花名:小邪)在 Qcon 上海重磅宣布,阿里云与微软联合推出开放应用模型 Open Application Model (OAM...

阿里云官方博客
24分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部