首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 请高手帮帮小弟,公司要求3天内掌握delphi,说可能吗?来者有分. [无满意答案结贴,结贴人:javazhuobin]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • javazhuobin
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 揭帖率:
    发表于:2008-06-12 18:58:43 楼主
    这几天公司出了个题目:
    利用delphi制作一个通讯录管理工具,具体包括:
    1、通讯录至少包含姓名、性别、电话、地址等信息。
    2、程序分为2部分,主界面只要有调用通讯录的按钮即可,通讯录的界面必须使用动态链接库(dll)开发,通过主界面的按钮来调用通讯录界面。
    3、通讯录要能实现增、删、改、保存、导入等功能(增删改功能不许使用db控件)。
    4、通讯录的数据库类型不限,但是开发完成的程序要能拷贝到其他人机器上直接用,或者做成安装程序安装后可以使用。
    5、源代码要能拷贝到其他人机器上编译通过。


    求教高手们:学3天delphi后,可以解决上面的这个小题目吗?
    帮忙写出者,得高分.(60分以上)
    100  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hys_427
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-12 19:23:301楼 得分:0
    可以,最近给学生上课,做了个小通讯录,给你代码,分给我
    unit Unit1;

    interface

    uses    //把要包含的单元包含进来,一般情况下不用管它,系统自动生成
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, ComCtrls, ExtCtrls;

    type    //定义窗体类
      TForm1 = class(TForm)
        PageControl1: TPageControl;//定义那个选项卡控件
        TabSheet1: TTabSheet;    //选项卡里面的第一页
        TabSheet2: TTabSheet;    //选项卡里面的第二页
        Button1: TButton;    //保存按钮
        Button2: TButton;    //取消按钮
        GroupBox1: TGroupBox;//请输入姓名组合框
        Label2: TLabel; //上面文字是姓名
        Edit1: TEdit;  //让你输入姓名的编辑框
        RadioButton1: TRadioButton;//单选按钮男
        RadioButton2: TRadioButton; //单选按钮女
        Label3: TLabel;  //性别
        Label4: TLabel;  //年龄
        ComboBox1: TComboBox;//下拉列表框,用于选择年龄
        Label5: TLabel;  //电话
        Edit2: TEdit;  //用于输入电话的编辑框
        Edit3: TEdit;  //用于输入地址
        Label6: TLabel;  //住址
        GroupBox2: TGroupBox; //显示查询结果的外面那个组合框
        GroupBox3: TGroupBox;//显示请输入姓名的那个组合框
        ListBox1: TListBox; //显示查询结果的列表框
        Edit4: TEdit;  //输入查询姓名的列表框
        Button3: TButton; //查询按钮
        procedure FormCreate(Sender: TObject);
        procedure FormClose(Sender: TObject; var Action: TCloseAction);
        procedure Button1Click(Sender: TObject);
        procedure Button2Click(Sender: TObject);
        function FindName(name:string):string;
        procedure Button3Click(Sender: TObject);
        procedure Edit4KeyDown(Sender: TObject; var Key: Word;
          Shift: TShiftState);
      private
        { Private declarations }
      public
        { Public declarations }
      end;

    var
      Form1: TForm1;  //窗口变量,不用管它
      SS:TStringList;//用于存放通讯录的字符串列表

    implementation

    {$R *.dfm}

    procedure TForm1.FormCreate(Sender: TObject);//窗口创建事件
    begin
    ss:=TStringlist.Create;//创建字符串列表
    if FileExists('Address.txt') then //如果文件Address.txt存在
      ss.LoadFromFile('Address.txt'); //那么把通讯录从Address.txt中载入到字符串列表中
    end;

    procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); //窗口关闭事件
    begin
    ss.Free;//窗口关闭时释放字符串列表ss占用的内存
    end;

    procedure TForm1.Button1Click(Sender: TObject);//保存按钮
    var
    s:string; //定义了一个字符串变量
    begin
    if Edit1.Text <>'' then //如果姓名编辑框不为空,那么执行下面的操作
      begin
      s:=Edit1.Text+'|'; //把姓名加上一个'|'赋给s
      if RadioButton1.Checked then  //如果单选框为男的被选中
          s:=s+'男' else s:=s+'女';  //则s再加上一个男,否则就加上女
      s:=s+'|'+combobox1.Text;  //s再加一个 '|',然后加上年龄
      s:=s+'|'+edit2.Text;  //s再加一个 '|',然后加上电话
      s:=s+'|'+edit3.Text; //s再加一个 '|',然后再加上地址
      ss.Add(s);      //在字符串列表中增加一行
      ss.SaveToFile('Address.txt');  //增加一行记录后,再保存到Address.txt文件中
      edit1.Text:=''; //设置姓名编辑框为空
      edit2.Text:=''; //设置电话编辑框为空
      edit3.Text:=''; //设置地址编辑框为空
      end;
    end;

    procedure TForm1.Button2Click(Sender: TObject);//取消按钮
    begin
    close; //单击取消按钮,再把窗口关掉,即退出程序
    end;

    //该函数功能是从字符串列表中查找前面姓名部分和
    //一个姓名相同字符串,并返回该字符串
    //例如字符串列表为:
    //刘丽|女|16|13523728888|安阳县白壁镇辛安村
    //王朋朋|男|20|13523728821|安阳县崔家桥南街村
    //现在我们要查找刘丽,则该函数会返回
    //刘丽|女|16|13523728888|安阳县白壁镇辛安村
    function TForm1.FindName(name: string): string;
    var
    i:integer; //定义一个整数变量
    begin
    result:=''; //先让返回结果为空字符串
    for i:=0 to ss.Count-1 do //i从0循环递增到字符串列表的数-1
      if copy(ss[i],1,length(name))=name then//length(name)的作用是取得name的长度
          begin //copy(ss[i],1,length(name))的作用是获取字符串列表中第i行,从第1个字符开始
          result:=ss[i];  //和name相同长度的字符串,如果获取的字符串和姓名一样,则表示找到了
          break;      //退出循环
          end;
    end;

    procedure TForm1.Button3Click(Sender: TObject); //查询按钮被点击事件
    var
    s:string;  //定义一个字符串变量
    list:TStringList; //定义一个字符串列表变量
    begin
    if edit4.Text <>'' then //如果查询前面要输入姓名的编辑框不为空,
    begin    //则开始执行查询,否则显示'请输入要查询的姓名!'
    s:=FindName(Edit4.Text);  //先看能不能找到对应的字符串记录,
    if s <>'' then    // 如:刘丽|女|16|13523728888|安阳县白壁镇辛安村
      begin  //如果返回的字符串不为空,则说明找到了,否则就显示"查无此人"
      list:=TStringlist.Create;//创建字符串列表
      list.Delimiter:='|';//设置该字符列表的分隔符为 '|'
      list.DelimitedText:=s; //设置该字符列表要分隔的字符串为s
      listbox1.Items.Text:=list.Text; //把分隔后的字符串列表赋给要显示结果的列表框,查询结束!
      list.Free;    //从内存中释放字符串列表
      end else showmessage('查无此人'); //没有找到对应的字符串记录
    end else showmessage('请输入要查询的姓名!');
    end;

    procedure TForm1.Edit4KeyDown(Sender: TObject; var Key: Word;//键盘按下事件
      Shift: TShiftState);
    begin
    if key=13 then//如果回车键按下
      self.Button3Click(self);//执行查询按钮被按下的动作
    end;

    end.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • wangj_0520
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-12 19:25:362楼 得分:0
    这个没什么问题,3天可以基本满足你的要求!已经很充足了.
    如果有什么疑问,到www.2ccc.com去看,这个里面有很多免费的例子.
    自己好好研究吧?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • galant2008
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-12 21:04:163楼 得分:0
    楼主要是有其他语言的编程基础,三天没有什么问题的
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • kaikai_kk
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-12 21:16:274楼 得分:0
    要是我做,可能要一年半载了...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • javazhuobin
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-12 21:33:035楼 得分:0
    偶有点JAVA的基础.但是delphi从哪里看起啊.只有三天的时间了.
      给点步骤啊
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • chenyq2008
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-12 21:52:396楼 得分:0
    如果从未接触过delphi的,绝对不可以,熟悉IDE也要好几天...呵呵
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • chenyq2008
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-12 21:55:177楼 得分:0
    除非有高手在旁边教一几把...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ghd2004
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-12 22:20:068楼 得分:0
    up
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • Heyongfeng
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-12 22:59:049楼 得分:0
    可能,
    有这样的源码下载
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sanguomi
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 01:20:2810楼 得分:0
    3天不太可能吧对一个新手来说
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • radarhp
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 05:31:2211楼 得分:0
    三天上手不难,只是写得质量稍差,偶从灭有看过delphi的书,一样写垃圾的D程序……够用就高兴了,呵呵
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • byteh
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 08:05:0512楼 得分:0
    会用和用好是两个概念
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • jieguo
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 09:07:1313楼 得分:0
    可以的,先抄抄别人已经有的代码
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • skylkj
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 09:16:5414楼 得分:0
    如果没有其他语言基础,没有数据库基础,3天恐怕不够


    单从要求上来说不难

    1,2就不说了

    3、通讯录要能实现增、删、改、保存、导入等功能(增删改功能不许使用db控件)。
    没有sql基础的话建议用adotable

    4、通讯录的数据库类型不限,但是开发完成的程序要能拷贝到其他人机器上直接用,或者做成安装程序安装后可以使用。
    access

    5、源代码要能拷贝到其他人机器上编译通过。
    ado

    想当年,刚毕业嘛都不会,只是大1学了半年java.第一天上班,领导扔本delphi的书过来,告诉我一周内交任务.然后....然后就这么过来了.
    想快速上手,最好的方法就是读现成的代码.有时你并不需要知道代码为什么那么写,只要知道要实现什么功能该copy哪段代码就可以了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • gyk120
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    • 2

    发表于:2008-06-13 09:46:4915楼 得分:0
    ……
    我从高二上学期开始学D,一直学到毕业,也就那么点破水平……
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • liangpei2008
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 09:48:2416楼 得分:0
    你应该可以~
    凡事无绝对~
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • kings_zqz
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 10:34:1317楼 得分:0
    我也是新手,现在做一个项目,可是一点P的概念都没有,不知道怎么去实现
    怎样去做,网上的教学视频怎么样
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • SmallHand
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 10:56:5818楼 得分:0
    机会抓住,拼吧。
    人的极限是逼迫出来的。
    相信你能做到。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • shuihan20e
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 10:59:4119楼 得分:0
    2ccc上下载一个
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • taskvip
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 11:19:5820楼 得分:0
    呵呵,我只相信一天可以吃成一个胖子。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yangkunjie
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 11:28:1921楼 得分:0
    相信自己
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • yangkunjie
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 11:30:4822楼 得分:0
    首先是得相信自己
    对着啤酒瓶、马桶、天空大声喊:我能!
    然后再踏踏实实去写,delphi上手快,写好难,在‘拿来主义’的基础上努力~
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • AudiQ7
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 11:52:0223楼 得分:0
    数据库用access最方便了。
    这是一个标准的小程序,增、删、改、查都有了。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • linghengmao
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 12:03:1624楼 得分:0
    我比較笨,如果旁邊沒人指點,不行。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • zdlou
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 12:36:0025楼 得分:0
    学习ing
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • flychenjun
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 13:53:0826楼 得分:0
    先看书,再看代码,再写代码,再发现问题,然后再看书,再看代码,再写代码,再发现问题,然后。。。。你就发现你原来也是delphi高手了~~~!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • abhw0381
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 14:03:3527楼 得分:0
    delphi很容易上手,我才学delphi没几天,现在找到感觉了.
    我觉得你这个工作量不难,最多一个星期搞定
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • dinglinger
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 16:15:0028楼 得分:0
    支持楼主和delphi拼了!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • xiaoyan_she
    • 等级:
    • 可用分等级:
    • 总技术专家分:
    • 总技术专家分排名:
    发表于:2008-06-13 16:33:2929楼 得分:0
    3天掌握Delphi基础就差不多
    修改