第一个delphi for php的小程序

今天化了一个小时写了一个小程序,我的delphi php的第一个程序。功能是在浏览器上显示一道简单的加法题,用户可以输入答案,电脑会告诉你正确或者错误,然后可以再来一题。功能很简单,主要为了熟悉delphi for php,写的时候,不时地查阅php帮助,发现这次codegear的php帮助做的还是不错的。

程序如下:

//Includes
require_once(”vcl/vcl.inc.php”);
use_unit(”forms.inc.php”);
use_unit(”extctrls.inc.php”);
use_unit(”stdctrls.inc.php”);
//Class definition
class Unit3 extends Page
{
public $txtAnswer = null;
public $btnB = null;
public $btnA = null;
public $btnRun = null;
public $lblMsg = null;
public $Button4 = null;
public $Button2 = null;
function btnRunClick($sender, $params)
{
$a=rand(1,9);
$b=rand(1,9);
$this->btnA->Caption=$a;
$this->btnB->Caption=$b;
$this->lblMsg->Caption=” “;
$this->txtAnswer->Text=” “;
}
function txtAnswerSubmit($sender, $params)
{
global $a;
global $b;
global $c0;
global $c1;
$a=$this->btnA->Caption;
$b=$this->btnB->Caption;
$c0=$a+$b;
$c1=$this->txtAnswer->Text;
if ($c0==$c1){$this->lblMsg->Caption=”Right”;
} else {$this->lblMsg->Caption=”Wrong”;
}
}
}
global $application;
global $Unit3;
//Creates the form
$Unit3=new Unit3($application);
//Read from resource file
$Unit3->loadResource(__FILE__);
//Shows the form
$Unit3->show();
?>

第一次写php有以下感受:

1 delphi4php的IDE很强,速度还是比较快的,并且有了vcl4php这样的强大武器以后,其他诸如zend的IDE可以彻底忘记了。delphi的IDE的流畅感觉只有vs可以相比。

2 $this->lblMsg 这样的对象写法,上来总是不适应,因为没有怎么好好看php5的书,后来看了几个例子,基本上明白了。其实和delphi原来的面向对象的体系几乎是一样的,只是语法不同而已,因为代码提示的速度很快,所以如果没有出来代码提示,就可以认为是写错了。

3 写$this很罗嗦,不知道有没有办法可以简化。

4 因为是面向对象的,所以只需要考虑其中的事件处理,上面的代码中只有两个内部的function的代码是写的,别的都是delphi自动生成。

5 以上程序有一个小错误,就是当Again按钮点击后,在请空text的值得时候,会发送一个submit,导致label显示wrong的信息。我想可以用一个表示状态的变量来进行全局控制。

6 每一句都要用; 结束,特别是在if中的语句,这点和pascal有些不同。

7 强大的IDE可以判断{}的层次,不至于出错。

8 感觉这样的例子写法几乎和windows原生程序没有什么差别。并且比起intraweb也简单很多。php到底很强啊,delphi则更强。

9 用向导生成的php代码送到dh和surpass上都不能正常运行。dh的出错信息好像是不支持inc.php这样的后缀,因为我不能修改dh上安装的php设置文件,只好有机会自己搭建一台apache的服务起来测试了。delphi4php自己在调试的时候用的就是apache,我想应该是设置上的问题。

10 据说delphi4php对于中文支持不好,还没有测试。

11 检查语法正确功能没有快捷键不太方便。

慢慢继续研究。

时间: 2024-09-17 11:59:00

第一个delphi for php的小程序的相关文章

windows-想做一个可以帮助工作的小程序,但不知道怎么入手!

问题描述 想做一个可以帮助工作的小程序,但不知道怎么入手! 我想用C语言实现一个小工具,它可以把图纸上的数字识别出来,然后通过调用windows api 操作键盘和鼠标打开word软件然后把这个数字输入在word文档里,保存退出!不知道哪位大侠 可以给一些指点 解决方案 我见过,应该是先把图截取出来吧 解决方案二: 求助:想做一个sourcesafe的程序想做一个android程序 解决方案三: "图纸上的数字"?c能open文本文件.二进制文件,图像文件好像不行吧

求一个特别简单的安卓小程序 就是点击一个按钮就与IP127.0.0.1 端口8500建立连接

问题描述 求一个特别简单的安卓小程序 就是点击一个按钮就与IP127.0.0.1 端口8500建立连接 就是安卓的socket程序 能与只连接就行 主要我不懂线程有人说不能写到主线程里 解决方案 把网络耗时的操作放到Handler里面,新建线程操作. http://www.cnblogs.com/devinzhang/archive/2011/12/30/2306980.html 解决方案二: sockt()://建立套接字 connect()://连接 send()://发送 recv():/

一个有关随机函数rand()的小程序

随机函数rand()的小程序: #include<iostream> #include <time.h> #include <fstream> #include <windows.h> using namespace std; unsigned t[300],temp; void creat_rand() //产生随机数的函数 { long i=1; cout<<"为您产生的随机数如下:"<<endl; srand

一个Java实现的计算器小程序

/** @author Song Liang Peng @version 2005.7.23 */ import java.awt.*; import java.awt.event.*; public class Counter extends Frame implements ActionListener { TextField t=new TextField("",15); Panel p1=new Panel(); Panel p2=new Panel(); Button[] b

微信小程序开始试点广告功能,一个新的广告竞价体系将要诞生

6月16日下午,很多网友反应微信小程序里出现了广告内容.具体来说,通过小程序入口搜索"酒店"."机票"等关键字,会得到大量相关的搜索结果,而广告内容会显示在第一位而且有清晰的标识. 如下图,搜索"酒店"会看到艺龙酒店机票火车票预订的广告内容,而搜索"机票"会看到同样的广告内容. 另外笔者还发现,这些广告内容同时也出现在了"搜一搜"功能中.输入"机票"."酒店"两个关键

做一个微信小程序多少钱?

很多朋友在问做一个微信小程序多少钱?他们知道微信小程序是下一个风口,也想从小程序上分得一杯羹.微信小程序是一个不需要下载安装就可使用的应用,它实现了应用触手可及的梦想,用户扫一扫或者搜一下即可打开应用.用户不用关心是否安装太多应用的问题.应用将无处不在,随时可用,但又无需安装卸载.那么开发一款微信小程序有哪些成本呢? 一.首先要开发 我们假定要开发的是一个电商购物的小程序,用户注册登录,产品陈列,加入购物车,下单购买,支付,售后跟进,这是一个典型的电商需求,这种需求在市面上无论APP或公众号H5

VC++的win32小程序内存泄漏,求高手解答

问题描述 VC++的win32小程序内存泄漏,求高手解答 做的一个简单的交通模拟小程序,用三个定时器分别产生 汽车处理消息,红绿灯更换消息和汽车随机产生消息.但是最后程序内存越跑越大.求高手解答.http://download.csdn.net/detail/hdwbdbsm/6724747这个是程序的下载地址,求高手.

经过百般努力,终于用JSP写出FileUpload上传小程序

js|程序|上传 经过百般努力,终于可以写出一个自己的上传小程序了,其中以上面的url为标准写的,不过这个程序和新版本的commons-fileupload-1.0,存在不一样的地方,就是: 新的是: void write(java.io.File file) A convenience method to write an uploaded item to disk. 而这里的是String!!! 多亏我还有一点java基础,,通过查找api Constructor Summary File(

微信小程序使用第三方库Immutable.js实例详解_javascript技巧

前言 Immutable JS 提供一个惰性 Sequence,允许高效的队列方法链,类似 map 和 filter ,不用创建中间代表.immutable 通过惰性队列和哈希映射提供 Sequence, Range, Repeat, Map, OrderedMap, Set 和一个稀疏 Vector. 微信小程序无法直接使用require( 'immutable.js' )进行调用,需要对下载的Immutable代码进行修改,才能使用. 原因分析 Immutable使用了UMD模块化规范 (f