2009-12-28 45 views
1

我正致力于将“开源”项目的代码库转换为实际可行的项目。我把这个术语放在引号中,因为原作者所做的是采用商业产品,并说:“好吧,我们现在已经赚到了足够的钱,下面是源代码,做任何你想要的东西。”不幸的是,代码库需要超过1000美元的专有组件库才能编译。寻找一个免费的,可定制的数据库网格

我已经仔细地处理了大部分专有的东西,除了一个主要的例外。它使用InfoPower TwwDBGrid相当多。在一个重要的地方,它有一个显示名称列和几个复选框的网格,名称列的背景颜色和文本颜色可以为每个单独的记录进行自定义。

我已经有了在Infopower网格中执行此操作的代码,并且对于DevEx网格重新实现将是微不足道的,但我似乎无法找到可以处理它的开源网格。我不需要InfoPower网格的全部功能,但我确实需要一个数据库网格,它可让您指定列类型(如复选框列),并具有用于在绘制时着色单元格的事件处理程序。

有谁知道符合这些要求的电网?我真的不希望有做一些丑陋的,就像一个TdbCtrlGrid盗号的,如果我能避免它...

+0

我写了我自己的。真的,这并不困难。你只是发出HTML表格和单元格。创建一个类,使其具有字体,颜色和内容的属性。一旦你写了它,它是高度可定制和可重用的。你仍然在掌控之中。 – DOK 2009-12-28 17:02:17

+0

你知道,这真是个好主意!我必须记住它。但我认为这不适合这种情况。它可能工作,如果我不需要数据感知控件,但最后我检查,HTML中没有标记... :( – 2009-12-28 17:13:51

回答

3

回答的问题,但看看SMDBGrid,它是免费的,满足您的要求,它会节省您的时间,而不是重新实现它们。

alt text http://www.scalabium.com/images/smdbgrid.gif

+0

这看起来非常好!你说得对,它会节省大量的时间来尝试手动实现这种行为,我正在改变被接受回答这个问题。感谢您的关注。 :) – 2009-12-28 22:44:26

6

定期TDBGridcan be adapted显示复选框and can color its cells。它也可以是handle custom controls to some degree,并且通常比大多数人所称赞的更具定制性。除非你有没有在这里指定的要求,我没有看到任何规定它的规定。

+0

Ooo ...非常好的文章!我不知道TDBGrid可以做到这一点。但我只做了一个非常简单的测试程序,其中包含一个带有单个TBooleanField和TDBGrid的TClientDataset,并且该网格不会给我一个复选框,它会给出一个只接受“True”和“False”的文本字段。有些方法可以让它显示一个TDBCheckbox,我真的很想知道它!(我在D2010上,以防有所帮助。) – 2009-12-28 17:49:22

+0

我想我错误地记住了这一点,但有一点谷歌搜索出现了:http://delphi.about.com/od/delphitips2009/qt/dbgrid-checkbox.htm我会更新可能的答案。 – 2009-12-28 17:53:26

+0

谢谢,这有效。 – 2009-12-28 20:48:35