我爱builder

C++Builder 程序员博客

请诸位帮我一个忙啊!我想找一个由c++ builder 制作的中国象棋游戏,或者给我一些制作这类游戏所需要的学习的知识。在这里先谢谢了。C++的也可以。

C++Builder程序设计范例 中国象棋
http://www.ccrun.com/view.asp?id=290

学习

引用 2 楼 zhouzhangkui 的回复:
C++Builder程序设计范例 中国象棋
http://www.ccrun.com/view.asp?id=290

还有源码,找找看

嗯,学习学习

接分

  • Filed under: C++ Builder
  • 也就是说最新的BCB有没有改进。现在最新的DELPHI和BCB那个好用,有人用过最新的吗》?

    没用过DELPHI,但是从参考资料等各方面来说,应该是DELPHI多,另外应用也比较多

    其他的用起来也差不多吧。

    听说C++ BUILDER 的框架用C++重写了是真的吗?还有C++ BUILDER 稳定了吗?反应快吗?
    最新的版本或最近的版本,好用吗?

    引用 3 楼 jay_2008 的回复:
    听说C++ BUILDER 的框架用C++重写了是真的吗?还有C++ BUILDER 稳定了吗?反应快吗?
    最新的版本或最近的版本,好用吗?

    vcl还是pascal,从维护代码的角度看,根本没必要用c++重写。
    2009功能上改进了不少,但是还有bug,但是不影响使用。

    我觉得如果是初学使用6或2007版本比较好,毕竟现在的资料都是以前的

    有些基本控件的功能增强了,集成together可以建模了。支持vcl web开发但还有些问题。

    我在使用BCB2009
    很好用,
    因为我一直用BCB6.0

    补丁开发不及时啊

    最新的在B/S开发上,怎么样?不管是DELPHI还是C++ BUILDER

  • Filed under: C++ Builder
  • [builder]c builder

    checkListBox里有几条记录,需求:当左键单击该条记录时(例如:aa.txt),该记录内容显示到Tmemo中,但是前提是选中和不选中aa.txt前面的复选框,aa.txt内容都不能显示到Tmemo中(我现在是单击,选中,不选中复选框,内容都能跑进Tmemo中)。请问能不能实现呢?如何实现?

    单击的时候判断它的checked属性是否为true为true就加入TMemo

    确实说的不太明白

    引用 2 楼 songhtao 的回复:
    单击的时候判断它的checked属性是否为true为true就加入TMemo

    up。没选中的即放入memo,选中的就不管他

    lz的意思是让点前面的小框不进行任何动作?

    对啊 就是说小框里不管任何操作,Tmemo中都不会有数据显示,只有当单击该条记录时才会将内容显示到Tmemo中…

    对啊 就是说小框里不管任何操作,Tmemo中都不会有数据显示,只有当单击该条记录时才会将内容显示到Tmemo中…

    那就写在CheckListBox的DblClick裏

    呵呵!这样也算解决了问题,谢谢啦!!!

    解决请结贴.

  • Filed under: C++ Builder
  • [builder]c builder

    checkListBox里有几条记录,需求:当左键单击该条记录时(例如:aa.txt),该记录内容显示到Tmemo中,但是前提是选中和不选中aa.txt前面的复选框,aa.txt内容都不能显示到Tmemo中(我现在是单击,选中,不选中复选框,内容都能跑进Tmemo中)。请问能不能实现呢?如何实现?

    单击的时候判断它的checked属性是否为true为true就加入TMemo

    确实说的不太明白

    引用 2 楼 songhtao 的回复:
    单击的时候判断它的checked属性是否为true为true就加入TMemo

    up。没选中的即放入memo,选中的就不管他

    lz的意思是让点前面的小框不进行任何动作?

    对啊 就是说小框里不管任何操作,Tmemo中都不会有数据显示,只有当单击该条记录时才会将内容显示到Tmemo中…

    对啊 就是说小框里不管任何操作,Tmemo中都不会有数据显示,只有当单击该条记录时才会将内容显示到Tmemo中…

    那就写在CheckListBox的DblClick裏

    呵呵!这样也算解决了问题,谢谢啦!!!

    解决请结贴.

  • Filed under: C++ Builder
  • 在 bcb6.0中
    输入edit->
    会自动出来Text等需多函数和属性
    但是在c++builder 2009
    许多基本的函数和属性都出不来
    不知道需要在什么地方设置?

    楼上的可以。
    或者下个CnPack IDE Wizards,会把ctrl+空格换为alt+空格
    还有一点有的时候2009中需要先编译一下,才会出现代码提示。
    代码有错误不会提示,6.0也一样。

    lz说的是智能提示吧,好像Cb2009是这样的。

    可能更智能了,比如 UnicodeString yourStr = Edit1-> <Intelligent hint>;这时可能只会提示类型或者返回值类型为UnicodeString的属性(或者可以转换成UnicodeString的)

    但是印象当中好像也有不属于上述情况的

    1楼和2楼的方法到时没试过,有时间试试

    还有一点有的时候2009中需要先编译一下,才会出现代码提示。  // 不至于吧,不过经常遇到修改代码后,CB不便编译新的代码,还是编译原来的代码,好像CLEAN之类的也没用,必须重启CB

    代码有错误不会提示,6.0也一样。 // 这个肯定,VS也是这样

    在Editor的Options中选中Auto Complete

  • Filed under: C++ Builder
  • [builder]c builder

    checkListBox里有几条记录,需求:当左键单击该条记录时(例如:aa.txt),该记录内容显示到Tmemo中,但是前提是选中和不选中aa.txt前面的复选框,aa.txt内容都不能显示到Tmemo中(我现在是单击,选中,不选中复选框,内容都能跑进Tmemo中)。请问能不能实现呢?如何实现?

    单击的时候判断它的checked属性是否为true为true就加入TMemo

    确实说的不太明白

    引用 2 楼 songhtao 的回复:
    单击的时候判断它的checked属性是否为true为true就加入TMemo

    up。没选中的即放入memo,选中的就不管他

    lz的意思是让点前面的小框不进行任何动作?

    对啊 就是说小框里不管任何操作,Tmemo中都不会有数据显示,只有当单击该条记录时才会将内容显示到Tmemo中…

    对啊 就是说小框里不管任何操作,Tmemo中都不会有数据显示,只有当单击该条记录时才会将内容显示到Tmemo中…

    那就写在CheckListBox的DblClick裏

    呵呵!这样也算解决了问题,谢谢啦!!!

    解决请结贴.

  • Filed under: C++ Builder
  • 以前我用delphi开发程序,什么都不用管,程序编译后发到别人的电脑上可以正常运行。但程序体积太大了,一个空程序只有一个窗体也要几百KB,写上几句代码就要到1M大小了。
    现在我转学C++builder,编译出的程序只有30几KB大小,但是我在网上查找资料,别人说发布程序要附带一些文件才能到没有安装c++builder的计算机上正常运行。
    我想请教大家,用C++编译出来的30几KB大小的空窗体发布的时候需要附带什么文件呢。
    什么情况下需要附带文件,什么情况不需要。之前用delphi开发出来的程序都不需要考虑这些的。
    能讲详细点吗?
    我不用压缩或加壳软件的。

    vc也是如此吗,要附带文件?

    如果是动态链接 一些运行库是需要的

    引用 2 楼 jeepzn2 的回复:
    vc也是如此吗,要附带文件?

    vc也要带,不过windows里面已经有了vc的运行库,winxp sp2带了vc6,7,8的运行库,早期的windows版本没有带,
    最可靠的办法还是自己带。

    引用 1 楼 hemiya 的回复:
    Project->Option:Compiler->Release
    Packages->(去掉)Runtime Packages
    Linker->(去掉)Use dynamic RTL
    6.0和2009一样,就是具体位置不一样。
    这样就不用带其它文件了。
    如果不这样,最基本需要三个文件,cb6.0为例(名字也许不太准确):
    vcl60.bpl,rtl60.bpl,cc3260mt.dll
    装个虚拟机或其它没装cb的电脑,运行一下就知道缺什么文件了,方法虽然苯点,但是最可靠。

    完全编译就不需要什么了

  • Filed under: C++ Builder
  • 怎么处理程序中异常错误?有类似VB 的on error goto 或者 err对象集不?
    开发环境 C++ Builder 2007
    如果用
    try


    catch(????)//这个我怎么知道是throw 过来是什么类型
    {

    }
    本人只有初级水平,请大家详细说明。例如在用ADODCCONNECTion 联接数据库、执行SQL语句时,怎么判断数据库联接成功,发生错误如何自定义处理?

    如果一定要特地去抓連接的異常

        try
        {
            …..
            ADOConnection1->Open();
        }
        catch (EOleException &E)
        {
            ShowMessage("連接失敗");
        }

    記得#include "ComObj.hpp"

    查帮助,看你要捕获什么异常

    #include <iostream>
    #include <string>
    using namespace std;
    class Person
    {
    private:
    int age;
    string name;
    public:
    void setAge(int);
    void setName(string);
    };
    class Error
    {
    public:
    virtual void show()=0;
    };
    class nameError:public Error
    {
    public:
    void show()
    {
    cout < <"name is error" < <endl;
    }

    };
    class ageError:public Error
    {
    public:
    void show()
    {
    cout < <"age is error" < <endl;
    }
    };
    void Person::setAge(int a)
    {
    ageError ag;
    if(a <0||a>100)
    throw ag;
    this->age=a;
    }
    void Person::setName(string str)
    {
    nameError ne;
    if(str=="exit")
    throw ne;
    this->name=str;
    }

    int main(void)
    {
    Person p;
    try
    {
    p.setAge(0);
    p.setName("exit");
    }
    catch(Error &er)
    {
    er.show();
    }
    return 0;
    }

    如果是catch(…){}
    为捕获所有的异常

        try
        {
            …..
            ADOConnection1->Open();
        }
        catch (Exception &exception)
        {
            Application->ShowException(&exception);
        }
        catch (…)
        {
            try
            {
              throw Exception("");
            }
            catch (Exception &exception)
            {
                Application->ShowException(&exception);
            }
        }

    捕捉指定异常类型,如果没有捕捉到就进入catch (…),也就是前面说的所有异常.

  • Filed under: C++ Builder
  •   OleVariant Template ;
      OleVariant DocumentType=wdNewBlankDocument;
      //
        Template=OpenDialog1->FileName;
        WordApp->Documents->Add(Template, NewTemplate);
        WordDocument1->ConnectTo(WordApp->Documents->Item(ItemIndex));
        //****************************
        //以下是测试读取稿件的"创建时间"
        //****************************
      怎么取到?   

    我去测试一下,回来结贴

    我是要用WordDocument来读取?有没有使用这个的,来一个!

    能用WordDocumen取到文件的创建时间吗?
    举个例子

    没人会?

    引用 1 楼 yumikoo 的回复:
    C/C++ code
    void __fastcall TForm1::BitBtn2Click(TObject *Sender)
    {//获取文件时间属性
      AnsiString StrFile=this->Edit1->Text;//文件路径
      if(StrFile.Length() <1)
          return;
      int FileHandle=FileOpen(StrFile,fmOpenRead);
      if(FileHandle==-1)
      {
          MessageBox(Handle,"文件打开不正确!","信息提示",MB_OK);
          return;
      }
      TFileTime CreateTime,AccessTime,WriteTime;
      if(G…

    这个可以解决你的问题了,为什么一定要用WordDocumen

    厉害!!!

    接分!!

  • Filed under: C++ Builder
  • c++ builder 2007,在代码区域下方选项卡只能看到code 和history这两项,点击.h和dfm文件都出不来,也看不到,怎么回事

    1 确保三个文件都存在,是否是你在做的时候本身就是一个Cpp文件
    2 确保三个文件在同一个文件夹里
    3 确保三个文件除扩展名名外,名称要相同。
    4 在头文件中找到
    #ifndef  xxxxx
    #define  xxxxx
    查看其后的xxxxx是否是其头文件的名(例如ydlchina.h)去掉“.”的形式(如ydlchinaH),如果不是就改为这种形式

    版本升级会有这个问题,按照楼上的改!

    路过,…

    文件都在,都在一个文件夹里,文件名相同,这些都没有错
    新建工程没有问题,可以显示出来,估计是工程设置的问题,但是在哪里进行设置我就不清楚了
    但是打开旧的就不行了.
    刚测试了一下,新建了一个工程,放了一个form和一个datamodule
    然后关闭重新打开,发现form能正常显示(包括头文件),但是datamodule就只能显示cpp了,怎么回事?很恐怖阿,如果做大程序,所有的form怎么都出不来那就完了

    该回复于2008-07-10 02:51:19被版主删除

    该回复于2008-07-10 02:40:21被版主删除

    .h文件出错

    #ifndef XXXXXX
    #define XXXXXX
    中的XXXXX改为实际的文件名

    我试验解决了问题

    我用2009也是这个问题!

    我的头文件也改了!

    为什么也不行啊!!!

    http://topic.csdn.net/u/20081031/14/690d64ac-7778-40f3-9c03-2354d2db67ff.html

    例如你的头文件名为    "Hello.h"
    所以你的头文件就应该如下使用   

    C/C++ code
      #ifndef  HelloH //看这是否为头文件名+H格式
      #define  HelloH
    //在#ifdef和#define中要使用头文件名

    搞定了!

    很开心!!

    友情UP

  • Filed under: C++ Builder