张志峰的博客

水滴石川,积少成多。

导航

随笔分类 -  Delphi

摘要:Delphi 删除目录(二)procedure TForm1.BitBtn1Click(Sender: TObject); var sr:TsearchRec; begin if directoryExists( 'g:\a ') then begin if FindFirst( 'g:\a\*.* ',faAnyFile,sr)=0 then begin repeat deleteFile( 'g:\a\ '+sr.Name); until FindNext(sr) <> 0; Findcl... 阅读全文

posted @ 2011-12-05 13:48 ╰★张志峰★╮ 阅读(407) 评论(0) 推荐(0) 编辑

摘要:delphi读取ini文件INI文件在系统配置及应用程序参数保存与设置方面,具有很重要的作用,所以可视化的编程一族,如VB、VC、VFP、Delphi等都提供了读写INI文件的方法,其中Delphi中操作INI文件,最为简洁,这是因为Delphi提供了一个TInifile类,使我们可以非常灵活的处理INI文件一.INI文件的结构[小节名]ini文件 关键字1=值1 关键子2=值2INI文件允许有多个小节,每个小节又允许有多个关键字,“=”后面是该关键字的值。值的类型有三种:字符串、整型数值和布尔值。其中字符串存贮在INI文件中时没有引号,布尔真值用1表示,布尔假值用0表示。二、定义1、 在In 阅读全文

posted @ 2011-12-01 14:29 ╰★张志峰★╮ 阅读(7682) 评论(0) 推荐(0) 编辑

摘要:以前总是循环展开,现在有这个属性,就简单多了RzTreeView_DWDept.FullExpand; 这样就可以全部 展开了。还有一个问题,设置节点选中RzTreeView_DWDept.SetFocus;if RzTreeView_DWDept.Selected = nil then RzTreeView_DWDept.Selected := RzTreeView_DWDept.Items.Item[0];这个的重点是 RzTreeView_DWDept.SetFocus; 如果当前焦点没有在树上,你怎么设置都不起作用。 阅读全文

posted @ 2011-11-25 13:45 ╰★张志峰★╮ 阅读(3208) 评论(0) 推荐(0) 编辑

摘要:有的时候 ,我们希望给所有的控件的某个指定的事件挂接一个自定义的事件处理程序 ,例如 ,OnContextPopup 事件 ,那么该如何做呢?请参看下面的代码 ,下面的代码会给所有有 OnContextPopu 事件的控件都挂接指定的处理程序 : private { Private declarations } procedure AssignOnContextPopupEvent; procedure OnContextPopup(Sender: TObject; MousePos: TPoint; var Handled: Boolean); public { Public declara 阅读全文

posted @ 2011-11-24 15:09 ╰★张志峰★╮ 阅读(878) 评论(0) 推荐(0) 编辑

摘要:delphi pchar char byte string转换问题 注:Delphi中的Char,PChar,PByte,Byte,String的相互转换,您是不是也遇到过,为此头疼过吗?你要是明白了他们的原理就会轻松了。话题064840的标题是: Q:关于PChar的用法 (200分)分类:非技术问题 PTiger (1998-10-19 18:33:00) 我要从tPing.ini中读取Host段中的Address键值,但是读不出。1、首先往tPing.ini中写数据host := '8.8.8.8';WritePrivateProfileString('Host& 阅读全文

posted @ 2011-11-23 16:30 ╰★张志峰★╮ 阅读(13649) 评论(0) 推荐(0) 编辑

摘要:AdvStringGrid_IDX.AutoSizeColumns(False); 阅读全文

posted @ 2011-11-21 10:13 ╰★张志峰★╮ 阅读(785) 评论(0) 推荐(0) 编辑

摘要:object DBGridEh_Log: TDBGridEh Left = 2 Top = 2 Width = 635 Height = 475 Align = alClient AllowedOperations = [alopUpdateEh] ColumnDefValues.AlwaysShowEditButton = True DataGrouping.Color = clWindow DataGrouping.GroupLevels = <> DataGrouping.ParentColor = False Flat = True FooterColor = clInfo 阅读全文

posted @ 2011-11-09 09:19 ╰★张志峰★╮ 阅读(2684) 评论(0) 推荐(0) 编辑

摘要:OpenDialog1.Filter := '97-2003Word程序(*.doc)|*.doc|2007程序(*.docx)|*.docx'; 阅读全文

posted @ 2011-11-07 11:53 ╰★张志峰★╮ 阅读(1285) 评论(0) 推荐(0) 编辑

摘要:ForceDirectories(Dir)是Delphi和bcb中用来创建一个目录的函数。 支持多级目录。编辑本段说明 bool ForceDirectories(AnsiString Dir); 返回:返回创建目录是否成功。 参数:Dir是创建目录路径。如:"F:\\a\\b\\c"编辑本段与CreateDir区别 ForceDirectories创建多级目录,父目录不必存在。而CreateDir只创建最后一级目录,父目录必须存在。相当于Java中File中的mkdirs和mkdir的区别。编辑本段例子 String dirPath="F:\\a\\b" 阅读全文

posted @ 2011-11-07 11:28 ╰★张志峰★╮ 阅读(1189) 评论(0) 推荐(0) 编辑

摘要:把TabVisible的属性设置成False就可以了TabSheet_Operator.TabVisible := False;TabSheet_LimitEnumerate.TabVisible := False; 阅读全文

posted @ 2011-11-07 10:34 ╰★张志峰★╮ 阅读(1941) 评论(0) 推荐(0) 编辑

摘要:一,定义://1. 标准方法:varMyArr: array[0..10] of Integer; //定义静态一维数组//2. 根据预定义类型来声明数组:type TMyArr = array[0..10] of Integer; //先定义一个数组类型var MyArr: TMyArr; //再定义静态数组//3. 在非过程区可以直接赋值:MyArr: array[0..2] of Integer = (11,22,33);//4. 多维数组:MyArr: array[0..2, 0..2] of Integer;begin MyArr[1,2] := 100;end二,求数组长度:con 阅读全文

posted @ 2011-10-25 15:36 ╰★张志峰★╮ 阅读(5627) 评论(0) 推荐(0) 编辑

摘要:MM(ModelMaker)两小时上手指南 作者:郭方明 完成日期:2005-12-06 version 1.0 联系信箱:gfm_job@163.com 注:转载文章,请注明作者信息。 关键字:ModelMaker上手指南 Delphi建模工具 CASE工具 引文: 本文通过一个简单的例子介绍使用MM(ModelMaker)设计类图和生成Delphi代码,以及代码逆向同步的过程;让你在最短的时间内上手MM。 编写本文使用的是ModelMaker 7,不能保证文章内容适合所有版本。 谁需要阅读本文: .. 刚接触MM 需要掌握其基本操作方法。 .. 使用Delphi 语言想要学习UML 建模的 阅读全文

posted @ 2011-10-20 11:39 ╰★张志峰★╮ 阅读(2008) 评论(2) 推荐(0) 编辑

摘要:这个是效果图,挺爽的吧object Form1: TForm1 Left = 192 Top = 114 Width = 979 Height = 563 Caption = 'Form1' Color = clBtnFace Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -11 Font.Name = 'MS Sans Serif' Font.Style = [] OldCreateOrder = False PixelsPerInch = 96 TextHeigh 阅读全文

posted @ 2011-10-18 11:11 ╰★张志峰★╮ 阅读(2054) 评论(0) 推荐(0) 编辑

摘要:MaskEdit是用来建立编辑框的,但它与Edit编辑框可以输入任意字符不同,MaskEdit可以限制用户只能按照既定的输入格式输入。掩码编辑框(MaskEdit)是一种特殊的编辑框。使用它可以设计出许多复杂的输入格式。在选用MaskEdit之后,需要为它设计一个输入格式。方法如下: 首先在窗体上将MaskEdit选中,在对象查看器(Object Inspector)中找到EditMask属性,双击它,弹出一个如下图所示的对话框。 对话框左上角的Input Mask编辑框用于输入掩码格式。掩码格式可以分为三部分,每个部分之间用分号“;”分开,如“!90:90:90:;1;_ ”。下面解释各.. 阅读全文

posted @ 2011-10-12 14:48 ╰★张志峰★╮ 阅读(8462) 评论(0) 推荐(0) 编辑

摘要:RaizeComponentsII有什么新特点呢?RaizeComponentsII的每个组件都很强大并拥有30多个新的控件,它具有以下新特点:-定制框架-增强了现有的组件-新的组件-新的组件包组件概述下面简单描述一下RaizeComponentsII中的每个组件:TRzAnimator(NEW)本组件支持图象列表中图象的“击活”(animating)TRzBackground(NEW)本图形组件支持显示图象背景部分的坡度或质地结构TRzBalloonHints(NEW)本组件支持多线提示(multi-linehints)和“气球状”(balloon-style)提示TRzBmpButton( 阅读全文

posted @ 2011-10-12 09:31 ╰★张志峰★╮ 阅读(5685) 评论(0) 推荐(0) 编辑

摘要:在Delphi的IDE中,按Ctrl+Shift+G键可以为一个接口生成一个新的GUID 阅读全文

posted @ 2011-10-09 17:20 ╰★张志峰★╮ 阅读(1073) 评论(0) 推荐(0) 编辑

摘要:设置表格的UseMutilTitle为true就可以了,细节决定成败,切记切记!!!! 阅读全文

posted @ 2011-09-29 11:10 ╰★张志峰★╮ 阅读(354) 评论(0) 推荐(0) 编辑

摘要:编写一个组件一般分为6个步骤:1.确定一个祖先类。2.创建一个组件单元。3.给新建的组件添加属性、事件、方法。4.测试该组件。5.在Delphi中注册该组件。6.为该组件建立帮助文件。 阅读全文

posted @ 2011-09-27 14:14 ╰★张志峰★╮ 阅读(344) 评论(0) 推荐(0) 编辑

摘要:1.如果把DragMode设置成dmAutoMatic 自动就会有拖拽效果。2.如果把DragMode设置成dmManual,则需要调用BeginDrag才起作用,这个函数有两个参数(Immediate: Boolean; Threshold: Integer) Immediate = true 则拖拽操作会立刻开始,鼠标变成dragCursor类型,Immediate = false 当达到Threshold设定的值时,会产生拖拽操作。unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphi 阅读全文

posted @ 2011-09-27 13:49 ╰★张志峰★╮ 阅读(5674) 评论(0) 推荐(0) 编辑

摘要:1.先设置表格列的属性procedure TForm_TaskToDW.InitGrid;var MyCol: TColumnEh;begin with DBGridEh_Task do begin Columns.Clear; MyCol := Columns.Add; MyCol.FieldName := 'Select'; MyCol.Title.Caption := '选择'; MyCol.Alignment := taCenter; MyCol.Width := 50; MyCol.ReadOnly := false; MyCol := Columns 阅读全文

posted @ 2011-09-20 10:55 ╰★张志峰★╮ 阅读(3129) 评论(0) 推荐(0) 编辑