PS:因为我现在用的电脑是WIN7 64位系统,所以没有实现功能,不知道XP是否可行。

  1. //1.定义方法
  2. procedure WMNCPaint(var Msg : TWMNCPaint); message WM_NCPAINT;
  3.  
  4. //2.实现方法
  5. procedure TForm1.WMNCPaint(var Msg: TWMNCPaint);
  6. var
  7. dc:hDc;
  8. Pen:hPen;
  9. OldPen:hPen;
  10. OldBrush:hBrush;
  11. begin
  12. inherited;
  13. //获取本窗口设备上下文
  14. dc:=GetWindowDC(Handle);
  15. msg.Result:=;
  16. //创建画笔,实线、宽度为l、红色
  17. Pen:=CreatePen(PS_SOLID,,RGB(,,));
  18. //将新创建的画笔选入窗体的设备上下文
  19. OldPen:=SelectObject(dc,Pen);
  20. //将系统库存的空画刷入窗体的设备上下文
  21. OldBrush:=SelectObject(dc,GetStockObject(NULL_BRUSH));
  22. //给窗体“镶边”
  23. Rectangle(dc,,,Form1.Width,Form1.Height);
  24. //恢复旧画笔和旧画刷
  25. SelectObject(dc,OldBrush);
  26. SelectObject(dc,oldPen);
  27. //删除新创建的画笔,释放系统资源
  28. DeleteObject(Pen);
  29. //释放设备上下文
  30. ReleaseDC(Handle,Canvas.Handle);
  31. end;
  32.  
  33. //3.DBGrid控件描边
  34. procedure TForm1.FormPaint(Sender: TObject);
  35. var
  36. Rct: TRect;
  37. begin
  38. Rct:=Rect(Dbgrid1.Left-,Dbgrid1.Top-,Dbgrid1.Left+Dbgrid1.Width+,Dbgrid1.top+Dbgrid1.Height+);
  39. with Form1.Canvas do
  40. begin
  41. Pen.Color := clRed;
  42. Pen.Width := ;
  43. Brush.Style := bsClear;
  44. Rectangle(Rct);
  45. end;
  46. end;

Delphi给窗体镶边-为控件加边框,描边,改变边框颜色的更多相关文章

  1. delphi如何按照控件的左右顺序来遍历窗体中的每个控件 [问题点数:20 http://bbs.csdn.net/topics/380216822

    delphi如何按照控件的左右顺序来遍历窗体中的每个控件delphi默认是按照控件添加进窗体的顺序来遍历的,有没有哪个属性能控制这个/?? 更多0分享到:   对我有用[0] 丢个板砖[0] 引用 | ...

  2. Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView、TTreeViewItem

    Delphi XE2 之 FireMonkey 入门(44) - 控件基础: TTreeView.TTreeViewItem TScrollBox -> TCustomTreeView -> ...

  3. Delphi XE2 之 FireMonkey 入门(38) - 控件基础: TPopupMenu、TMenuItem、TMenuBar、TMainMenu

    Delphi XE2 之 FireMonkey 入门(38) - 控件基础: TPopupMenu.TMenuItem.TMenuBar.TMainMenu 相关控件: TMenuBar.TPopup ...

  4. Delphi XE2 之 FireMonkey 入门(36) - 控件基础: TForm

    Delphi XE2 之 FireMonkey 入门(36) - 控件基础: TForm 当我第一次读取 Form1.StyleLookup 并期待出现 "formstyle" 时 ...

  5. Delphi XE2 之 FireMonkey 入门(35) - 控件基础: TFmxObject: 其它

    Delphi XE2 之 FireMonkey 入门(35) - 控件基础: TFmxObject: 其它 TFmxObject 增加了 TagObject.TagFloat.TagString, 算 ...

  6. Delphi XE2 之 FireMonkey 入门(33) - 控件基础: TFmxObject: SaveToStream、LoadFromStream、SaveToBinStream、LoadFromBinStream

    Delphi XE2 之 FireMonkey 入门(33) - 控件基础: TFmxObject: SaveToStream.LoadFromStream.SaveToBinStream.LoadF ...

  7. 关于WinForm引用WPF窗体---在Winform窗体中使用WPF控件

    项目中有个界面展示用WPF实现起来比较简单,并且能提供更酷炫的效果,但是在WinForm中使用WPF窗体出现了问题,在网上找了一下有些人说Winform不能引用WPF的窗体,我就很纳闷,Win32都能 ...

  8. WinForm 鼠标进入移开窗体事件,因子控件导致的误触发

    /// <summary> /// 重写OnControlAdded方法,为每个子控件添加MouseLeave事件 /// </summary> /// <param n ...

  9. (转)C# WinForm中 获得当前鼠标所在控件 或 将窗体中鼠标所在控件名显示在窗体标题上

    原文地址:http://www.cnblogs.com/08shiyan/archive/2011/04/14/2015758.html /********************** * 课题:将窗 ...

随机推荐

  1. JNI和NDK的区别

    http://blog.csdn.net/ithomer/article/details/6828830 NDK(Native Development Kit)“原生”也就是二进制 android常用 ...

  2. C++创建一个动态链接库工程

    前话 在我们安装一些软件时,进入软件安装目录会经常看到.dll格式文件,系统system目录也存在许多dll文件 在软件游戏(window平台)更新的时候,很大部分是下载dll文件 所以会好奇这是什么 ...

  3. Android:常见错误提示

    记录开发中常出现的错误 1.遇到这样的错误时,应该立马想到是书写错误或语法错误,常见为android:name写成了name Attribute is missing the Android name ...

  4. Power Station POJ 4045

    题意:给你一棵树,让你求一点,使该点到其余各点的距离之和最小.如果这样的点有多个,则按升序依次输出. 树型dp #include <cstdio> #include <cstring ...

  5. 190. Reverse Bits

    题目: Reverse bits of a given 32 bits unsigned integer. For example, given input 43261596 (represented ...

  6. 107. Binary Tree Level Order Traversal II

    题目: Given a binary tree, return the bottom-up level order traversal of its nodes' values. (ie, from ...

  7. SRM 587 DIV1

    要掉到DVI2了..好不容这次的250那么简单,500的题知道怎么做,可惜没调出来500. 250的题很简单,从第1步到第N步,每次要么不做,要么走i步,且X不能走,问说最远走多远. #include ...

  8. POJ3687——Labeling Balls(反向建图+拓扑排序)

    Labeling Balls DescriptionWindy has N balls of distinct weights from 1 unit to N units. Now he tries ...

  9. java socket nio编程

    上次写了一个socket的基本编程,但是有个问题,阻塞特别严重,于是小编便去找了nio学习了一下... public class TimeServer { public static void mai ...

  10. Innodb 锁系列1 同步机制

    同步机制 Innodb实现了不依赖于平台的mutex,rwlock. 1. 全局变量 对于mutex, rwlock,都有一个全局链表. 1. mutex全局链表:mutex_list 2. rwlo ...