篇一 :delphi学习

Delphi学习心得

一、        IDE界面

Delphi是Inprise公司推出的基于对象Pascal语言的可视化集成开发工具。利用Delphi编程,可以快速、高效地开发出基于Windows环境的各类程序,尤其在数据库和网络方面,Delphi更是一个十分理想的软件开发平台。

最新版本:Delphi 20## (10.0)

商友3.x使用版本 Delphi 2.0

商友4.5、5.2使用版本Delphi 6.0

1、  主窗口:

(1)标题栏

标题栏中显示了当前的工程名,标题栏位于最上部。

(2)主菜单

通过主菜单可以实现集成开发环境中的绝大部分命令,愿意的话可以逐个浏览、使用一下主菜单中所有的命令。其中Delphi在主菜单栏中将“Component”(组件)和“Database” (数据库)作为独立的菜单项列出来,可以看出,利用Delphi进行程序开发,组件和数据库将是两个非常重要的方面。

(3)工具栏

工具栏上的每个按钮都实现了IDE的某项功能,诸如打开文件或创建项目等。

(4)组件栏

组件面板包含了IDE中安装的所有的VCL组件和ActiveX控件。各选项页和组件在面板中的顺序和外观可以通过右击它或从主菜单中选择Component | configure Palette进行调整。在利用Delphi开发应用程序的过程中,正确、合理、恰当地使用组件非常重要。

2、  窗体设计器

窗体设计器刚开始的时候是一个空白的窗口。可以把窗体设计器看作是艺术家的画布,在这块画布上可以描绘出各种各样的Windows应用程序。应用程序的用户界面正是由窗体实现的。只要从组件面板上选择一个组件并把它放到你的窗体上,就能够实现与窗体设计器的交互。可以用鼠标调整组件在窗体设计器上的位置和大小,还可以用Object Inspector和代码编辑器来控制组件的外观和行为。

…… …… 余下全文

篇二 :用Delphi编写WebService的心得体会

Delphi编写WebService的心得体会.

相关名词:

    Dispatch: 派遣,分派 Invoke: 调用 Invokable: 可调用接口

   TReomtable: WebService中自定义类都是继承自该类 TSOAPAttachment: Attachment:附件,一种流类型,可以返回流数据 CGI:(EXE)

    ISAPI:(DLL) Base64编码: uses EncdDecd; s := EncodeString(s); //加 base64 编码 s := DecodeString( str ); //解码 UTF8: UTF8 是8位的UNICODE字符,而ASCII是7位 ,gb2312和unicode是2字节/字,utf8是3字节/字utf8类似以前的8位转7位的编码,是为 了 在网络间不同系统的通讯方便而作的转换。 几乎所有用.Net写的WebService只支持DOC方式、Delphi写的只支持RPC方式;J2ME目前对Web Service的支持仅限于RFC172,而 RFC172要求必须为DOC方式(sun怎么偏袒MS?)!

    为了在设计中减少障碍,下面还介绍几个概念。

   1) SOAP:SOAP是一种简单有效的数据传输协议,用于分布式网络环境下数据信息交换,它以XML 作为数据传输的格式,搭配Internet上标准的传输协议HTTP、SMTP、TCP等来传送信息。从本质上看,SOAP事实上只是将Request和Response经由XML格式把数据打包,达到双方沟通的目的。

    2) WSDL:WSDL(Web Service Description Language)是一种以XML格式描述的Web Service语言,当Web Service Provider 要对外公布提供的 Web Service,就需要通过WSDL来构建描述语言。 在WSDL中有两个非常重要的要素: :此WSDL文件所要描述的Web Service集合; 每一个Port代表外界Client可以和此Service沟通的一个进入点,一个Port会指定一个Binding方式。

…… …… 余下全文

篇三 :Delphi与Dll学习体会

Delphi与dll学习体会

Dll的创建:

1. 如果要在dll中加入窗体,最好先在其他应用程序工程中设计窗体,功能确定可行以后再在

dll工程中添加;

2. 在窗体相应的单元文件中加入Application对象同步程序SynApp和窗体显示程序

ShowForm;

a. 函数声明放在VAR全局变量声明部分,其他地方会报错;

b. 函数实现放在implementation部分,尽量放在所有窗体函数之前;

c. 为什么要这两个函数?因为dll不是自主运行的,窗体在其中可以看做一种资源,他

不会被自动创建,所以通过ShowForm函数创建加显示,显示模式只能是Model。同时在dll中的窗体相当于重新建立一个进程,你可以看到任务栏中有两个图标,一个调用程序的,一个dll窗体的,这是因为窗体的Application对象与应用程序不一致,这严重的时候可以造成内存错误,所以将窗体Application修改为应用程序的。故采用SynAPP函数。但是这仅仅针对调用者也是delphi应用程序?待进一步了解。

3. 下面是窗体的单元文件:

unitchangecolor;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

type

TForm1 = class(TForm)

Button1: TButton;

procedure Button1Click(Sender: TObject);

private

{ Private declarations }

public

{ Public declarations }

end;

var

Form1: TForm1;

implementation

…… …… 余下全文

篇四 :delphi7.0学习经验积累

delphi7.0学习经验积累 [原]

20xx年开始学习delphi一路以来的经验积累吐血大公开。若这些经验对你有所帮助,能使你少走些许弯路,恳请能告诉我,或若愿意和我分享经验,探讨vb、delphi、vc、asp问题请留下评论或email。本人email:boythl@163.com。用得不多。

===================================================

2006、10、11

在制作DLL时,在最后一定要把要发布的函数列出来,不然调用时会程序初始化失败,无法进入;

exports FunctionName;

MKDir(Path) 函数创建文件夹;

在创建数据库时,用户名需要设为Admin,改成txtx时发生了“无法启动应用程序。工作组信息文件丢失”的错误。

2006、10、12

StrUnits单元中

DupeString 函数 = VB string函数 重复N次某字符

PosEx可以从某个特定位置开始查找某字符

MidStr函数 = VB Mid函数

ReverseString函数 翻转字符串

StuffString函数 向一个字符串在某位置插入一个子字符串

RightStr 函数,从字符串最后取字符

StrRScan 字符最后次出现的指针

只有有序的数字和字母才能作为集合(sets),且个数不能超过255个.

TStrings对象的NameValueSeparator属性可以设置TStrings对象的文本包含Name和Value,如a=1,设置NameValueSeparator:='='可以使用getName等方法提取Name和Value

2006、10、17

ItemProps属性可以控制valueeditlist控件显示下拉框,在使用时需要注意self.vldFields.Row-1,因为表头的Key value行index=0

…… …… 余下全文

篇五 :JavaEE学习心得与总结

学习Java EE 心得体会

这学期通过对Java EE五部分的学习,掌握了java 的基本开发方法,

学习JavaEE 基础部分分为6大部分, 分别是基础服务,Java Web开发,Web Service,JSF框架,EJB部分和JPA。

其中第一部分是基础服务部分,此部分包括六章:第一章是概述,介绍了java EE 的发展历史,架构,组件,服务,容器等概念,并介绍了平台角色以及开发环境和应用服务的选择与安装。 第二章讲了使用JNDI 访问明明和目录服务,介绍了什么是命名和服务目录,以及如何通过JNDI 访问Weblogic 提供的命名目录服务。 第三章 讲了使用JDBC 访问数据库,介绍了JDBC的基本用法以及连接池的配置和访问。 第四章讲了使用JTA 进行事物处理,介绍了事物处理概念以及如何通过JTA进行事务处理。 第五章 RMI :远程方法调用,介绍了RMI 的结构以及如何使用RMI进行编程。 第六章,使用JMS接发消息,介绍了消息服务的概念,在Weblogic 中消息服务相关的配置以及如何通过JMS开发消息发送和接受程序。

J2EE是一种技术,旨在简化企业应用程序的设计和实施。在本教程中,您将学习J2EE是什么,它的好处,J2EE的主要组成部分,企业应用框架的演变,为什么要使用J2EE,J2EE平台架构,J2EE API和技术和J2EE参考实现。在继续之前,我们的J2EE讨论让定义企业应用程序是什么。企业应用程序是一个应用程序,它可能要继续使用他们,同时添加或迁移到一个新的利用互联网,电子商务等新技术的应用,集传统的现有应用程序和数据库。

Java EE 架构分为四层,客户端层,Web层,EJB层和数据库层,其中,数据库层为系统提供数据存储和数据库管理功能,在整个企业级应用中可能村爱很多个数据库,并且采用不同类型的数据库管理系统进行管理。EJB层也称为业务逻辑层,用于完成系统中复杂的或者共享的业务,这些功能主要是提供客户端层和Web层调用,用户不会直接调用该层。Web层是基于HTTP 的访问方式,客户通过Web层访问系统的业务逻辑和数据等。客户端层包括Applet客户端和Application客户端,客户通过客户端的形式访问系统的业务逻辑和数据等。 逻辑中的四层可能不同时出现在系统中,例如某个系统可能只提供Web形式的客户端,并且不使用EJB技术,此时系统图只留下Web层和数据库层。

…… …… 余下全文

篇六 :DELPHI积累

薛剑波学习心得之Delphi

Delphi 中 strpcopy 可以把一个字符串拷到一个CHAR型的数组

Var

Ary : arrary[0..100] of char;

S : string;

Ret : integer;

Begin

For I :=0 to 99 do

Ret := ret xor integer(ary[I]);

Result :=inttohex(ret,2);

Result :=lowercase(result);

End;

用strpcopy也可以把一个字符串拷到一个CHAR型的数组的指定域 function formatinttostr(icount :integer;len :integer) :string;

var

str:string;

strLen : integer;

iAry : Array[0..20]of char;

i : integer;

begin

str := IntToStr(iCount);

strLen := Length( str );

if ((Length( str ) > Len) or ( Len >= 20 )) then

begin

FormatIntToStr := '';

exit;

end;

for i := 0 to Len - strLen - 1 do

iAry[i] := '0' ;

iAry[Len] := #0 ;

FormatIntToStr := StrPas(iAry);

End;

在查询语句中加入条件时间的判断 Query1.ParamByName('currday').AsDate:=now;

Query1.open;

如果你的字段名是关键字(如date),请用双引号引上。

…… …… 余下全文

篇七 :matlab的学习心得

matlab学习体会的心得(zt)

最近在学习matlab,一直不入其法门。从网上看到了一些大虾的经验心得,感触颇深,转贴过来,希望给初学者有一定的指引。

一)写给学习matlab的新手们 作者:eight(八) 来源振动论坛

本人接触matlab已经有5年多的时间了,一直想写点东西,但是之前不知道放在哪里才能发挥它的最大作用,直到几天前碰上了这个论坛(有点像诸葛亮遇见姜维,哈哈)。

废话不说,我想借贵论坛宝地,写一些经验给使用matlab的新手们,当然了,老大们也可以看看,不嫌弃我写得粗糙的话还可以指点一下,先谢过了~~~~

首先我想说的是,matlab跟其他语言不一样(我用的比较多的编程语言,除了matlab就应该是c或c++了,VB和Delphi也接触过,我想版面(matlab版)大部分人也差不多),如果你抱着“把其他语言的思想运用在matlab里面”的话,那么我想,即使程序运行不出错,也很难把握matlab的精髓,也就很难发挥matlab的作用了。所以,如果你是希望matlab作为VC的附属品,即你不想在matlab上面花太多功夫,只纯粹想用matlab来完成VC做不了或很难做成的任务的话,那么,这篇文章你也不需要再阅读下去了;如果你是希望掌握一门语言、一个工具,使它更有效为你服务的话,那么,希望本文对你有所帮助。

Matlab是一个基于矩阵运算的软件,这恐怕是众所周知的事情了,但是,真正在运用的时候(就是在编程的时候),许多人(特别是初学者)往往没有注意到这个问题,因此,for循环(包括while循环)满天飞…………..这不仅是暴殄天物(没有发挥matlab所长),还浪费了你宝贵的时间。对此,版友MVH在他的“MATLAB小技巧”一文中也有所涉及,雷同的东西我也就不重复了,matlab的“帮助”里面也有相关的指示。我这里想说的一点是,初学者往往在初始化矩阵的时候注意到这个问题,懂得了使用矩阵而不是循环来赋值,但是,在其他环节上,就很容易疏忽,或者说,仍然没有摆脱C++的思想。举个例子吧,下面的代码是我的一个师弟写的,我想他接触matlab也有2、3年时间了(在此说明一下,接触2、3年并不是表示每天都会跟matlab打交道,我本人也不是,只是在一年某几个时间段里面连续使用),但是仍然会出现类似的问题:

…… …… 余下全文

篇八 :C#学习心得内带多个程序

C#面向对象编程学习体会

    C#是由Microsoft开发的一种新型编程语言,由于它是从C和C++中派生出来的,因此具有C++的功能。同时,由于是Microsoft公司的产品,它又同VB一样简单。对于web开发而言,C#象Java,同时具有Delphi的一些优点。Microsoft宣称:C#是开发.NET框架应用程序的最好语言。

    C#是.NET的关键性语言,它是整个.NET平台的基础。与C#相比,.NET所支持的其它语言显然是配角身份。比如,VB.NET的存在主要是对千万个VB开发人员的负责。对于JScript.NET和ManagedC++也同样可以这么说,后者只是增加了调用.NET类的C++语言。C#是唯一没有在设计思路中加入了前辈语言某种遗传的新事物。 .NET平台将C#作为其固有语言,重温了许多Java的技术规则。C#中也有一个虚拟机,叫做公用语言运行环境(CLR),它的对象也具有同样的层次。但是C#的设计意图是要使用全部的Win32API甚至更多。由于C#与Windows的体系结构相似,因此C#很容易被开发人员所熟悉。

C#还让你调用无管理的代码,也就是在CLR引擎控制之外的代码。这种不安全的模式允许你操作原始指针来读和写内置碎片帐集控制以外的内存。

    编写C#程序可以在文本编辑器中进行,或者在集成开发环境VisualStudio中进行。市场上还有一些第三方编辑器,其中一些是免费的。

一、封装

    这是一种隐藏信息的特性。拿本节引例来说,类CalculateDate 将数据结构与算法隐藏在类的内部,外界使用者无需知道具体技术实现细节即可使用此类。封装这一特性不仅大大提高了代码的易用性,而且还使得类的开发者可以方便地更换新的算法,这种变化不会影响使用类的外部代码。可以用以下公式展示类的封装特性:封装的类=数据+对此数据所进行的操作(即算法)。通俗地说,封装就是:包起外界不必需要知道的东西,只向外界展露可供展示的东西。在面向对象理论中,封装这个概念拥有更为宽广的含义。小到一个简单的数据结构,大到一个完整的软件子系统,静态的如某软件系统要收集数据信息项,动态的如某个工作处理流程,都可以封装到一个类中。具备这种“封装”的意识,是掌握面向对象分析与设计技巧的关键。

…… …… 余下全文