主从表的处理

pobosskey 2003-10-20 10:58:31
窗口中有两个dbgrid,对应的是一个主从表,我想这样处理,当按增加botton的时候,焦点在主表上就主表增加记录,焦点在从表上就从表上增加记录,请问这怎么处理?
更希望能得到更好的处理方式!
...全文
41 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
pobosskey 2003-10-22
  • 打赏
  • 举报
回复
那么这样的情况下啊应该怎么处理比较好呢?刚从pb转到这个上面,好多东西都不懂!两个东西差别 很大!各位帮帮我!
hatumei 2003-10-22
  • 打赏
  • 举报
回复
还是建议用一个明显的标记比较好(颜色亮一点的),况且当你点击按钮的时候,按钮就被设为焦点,至于DBGrid的焦点会不会丢失就不好说了。
hatumei 2003-10-22
  • 打赏
  • 举报
回复
有这样做的吗,这种应用程序拿到客户那儿,客户准抱怨会误操作,到时还得返工,呵呵。
aliker 2003-10-22
  • 打赏
  • 举报
回复
更正
第二个MasterTable->Close();改为Table1->Close();
aliker 2003-10-22
  • 打赏
  • 举报
回复
楼上的朋友,行吗?
楼主是说button click,并不是dbgrid click

if(DBGrid1->Focused())
{
try
{
MasterTable->Post();
……
}
__finally
{
MasterTable->Close();
……
}
}
if(DBGrid2->Focused())
{
try
{
Table1->Post();
……
}
__finally
{
MasterTable->Close();
……
}
}
同意52vc(方旭)
52vc 2003-10-22
  • 打赏
  • 举报
回复
try
{
if(DBGrid1->Focused())
{
//----
}
else
{
//------
}
}
catch(...)
{
//---
}
yjy1001 2003-10-22
  • 打赏
  • 举报
回复
我做过
具体做发是定了一个全局变量 int SelTag.
默然情况下 SelTag=0;
然后在 dbgrid1 的onclick中写 SelTag=0;
dbgrid2 的onclick中写 SelTag=1;
在button中写
switch(SelTag){
case 1:
//你的操作
break;
case 2:
//你的操作
break;
case 3:
//你的操作
break;
....
....
}
我当时 所有的表都是动态创建的,给了他们不同Tag值
然后:SelTag=(TDbGrid*)Sender->Tag;来区分的,你就2个表 容易多了
pobosskey 2003-10-22
  • 打赏
  • 举报
回复
为什么都没人帮 我的呢??
pobosskey 2003-10-22
  • 打赏
  • 举报
回复
能给个建议吗??
Lewolf 2003-10-21
  • 打赏
  • 举报
回复
也许是那个SpeedButton,但也许是别的,呵呵,倒是有可能是DBGrid获取焦点的,不过我觉得这样不太好的。
jiangchun_xn 2003-10-21
  • 打赏
  • 举报
回复
你点了Button,你说谁获得了焦点,别告诉我你说是哪个dbgrid。。。。。

pobosskey 2003-10-21
  • 打赏
  • 举报
回复
但是怎么实现知道哪个控件得到焦点的呢?能给个例子吗?
blankman 2003-10-20
  • 打赏
  • 举报
回复
设置一个变量,onEnter的时候将其设为1或2,即表示哪一个dbGrid被激活,
onExit的时候设为0,表示没有激活

可以吗?还有什么问题?
huangjuliang 2003-10-20
  • 打赏
  • 举报
回复
这就是判断焦点在哪个dbgrid就可以了

下面再来个if语句就可以了!

13,824

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧