二个VC的简单问题,跟贴有分!

fz_zhou 2002-02-24 10:11:39
1.VC是使用CEdit作特效的问题:
在VC中使用CEdit的时候,有没有办法象VB那样,在不同的CEdit能设置出不同的属性(如:背景色,文字颜色,可以闪烁);我只知道在OnCtlColor中改这些,但所有的都忙改了,我只想改其中的几个;是不是要自己新建一个从CEdit中派生的类才行的,但是当生成了以后,怎么放到Control 中去呢?(像加一个ActiveX,添完了就会在Control中出现)如果加不上去,那不就是每个都要用Create来生成吗?那么位置又很难定,而且加又很麻烦?

2.一个能查看和修改Access数据库的
请问有没有一个ActiveX控件可以实现查看和修改一个Access数据库,我经常用一个MS Hierarchical FlexGrid Control的,但只能查看,我找到了一个MS DataGrid,但是只能有二列,而我的Access表有很多列,在VB中的DataGrid好像可以加列的,在VC中用这样的控件吗?

所以来宝地求各位高手指点小弟几把!
...全文
34 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
我不是大明 2002-02-27
  • 打赏
  • 举报
回复
void CWbwzView::OnDatasave()
{
char temptchar[6];
if (!m_pSet->IsEOF())
{
m_pSet->MoveLast();
}
for (int i=0;i<=10;i++)
{
UpdateData(true);
m_pSet->AddNew();
m_pSet->SetFieldNull(NULL);

memset(temptchar,0,6);
gcvt(Data[i],6,temptchar);
m_pSet->m_T_date=temptchar; //经历时间

memset(temptchar,0,6);
gcvt(i,2,temptchar);
m_pSet->m_T_memo1=temptchar; //序号

memset(temptchar,0,6);
CString t_No;
m_strStartNo.GetWindowText(t_No); //编号
m_pSet->m_T_No=t_No;

// m_pSet->m_T_specification= //产品规格
// m_pSet->m_T_Ispecification= //电流规格
// m_pSet->m_T_Ibreak= //实际断开电流
// m //合格
}
}
我不是大明 2002-02-27
  • 打赏
  • 举报
回复

void CWbwzView::OnTimer(UINT nIDEvent)
{
CRecordView::OnTimer(nIDEvent);
}


void CWbwzView::OnDatasave()
{
char temptchar[6];
if (!m_pSet->IsEOF())
{
m_pSet->MoveLast();
}
for (int i=0;i<=10;i++)
{
UpdateData(true);
m_pSet->AddNew();
m_pSet->SetFieldNull(NULL);

memset(temptchar,0,6);
gcvt(Data[i],6,temptchar);
m_pSet->m_T_date=temptchar; //经历时间

memset(temptchar,0,6);
gcvt(i,2,temptchar);
m_pSet->m_T_memo1=temptchar; //序号

memset(temptchar,0,6);
CString t_No;
m_strStartNo.GetWindowText(t_No); //编号
m_pSet->m_T_No=t_No;

// m_pSet->m_T_specification= //产品规格
// m_pSet->m_T_Ispecification= //电流规格
// m_pSet->m_T_Ibreak= //实际断开电流
// m //合格
}
}


tpProgramer 2002-02-26
  • 打赏
  • 举报
回复
对于你的问题:

1。 当你使用菜单Insert /New Class...插入一个类时,你可以选择继承于CEdit类。 然后当你在Dialog上放置一个 编辑框控件后, 利用ClassWizard为这个控件生成一个变量,生成变量时,你选择Category为Control,然后你在Variable type下拉框中就会发现有两个选项了,其中一个就是你的新产生的类,选择这个新类为你控件对应的变量的类型即可。

2。在Dialog上点击右键,选择Insert ActiveX Control...,在出现的列表中选择Microsoft FlexGrid Control, version 6.0将 FlexGrid控件加入到你的对话框上。在控件上点击右键,选择Properties,修改控件各种属性。
不过需要提醒的是,可能这个控件在VC中并不如你在VB中用起来那么得心应手。

masterjames 2002-02-26
  • 打赏
  • 举报
回复
ADO + DBGRID
new_guy 2002-02-26
  • 打赏
  • 举报
回复
关注
yangsj 2002-02-25
  • 打赏
  • 举报
回复
用以下CRichEdit类。
JetCodeSun 2002-02-25
  • 打赏
  • 举报
回复
up,老兄我跟帖了,要给给跟噢*^_^*
我不是大明 2002-02-25
  • 打赏
  • 举报
回复
我找了老半天不知道怎么加DataGrid,用过得人能不能大概提示一下!
myctx 2002-02-24
  • 打赏
  • 举报
回复
我也是
honey 2002-02-24
  • 打赏
  • 举报
回复
来学习学习!!
leus 2002-02-24
  • 打赏
  • 举报
回复
老兄,你已经比我厉害了!我佩服!
goldolphin 2002-02-24
  • 打赏
  • 举报
回复
如果不是用MFC的话,也可以像 GJA106(中文字符)说的那样,然后得到在模板中建立的CEdit控件对象,用得到其位置,再将其删除,在其位置上创建自己的扩展类控件。
bluestar 2002-02-24
  • 打赏
  • 举报
回复
1. 自己写个扩展类
2. DataGrid和VB区别不大,可以添加列
GJA106 2002-02-24
  • 打赏
  • 举报
回复
1.自己写一个继承CEdit类的扩展类,不必像加一个ActiveX那样。
比如对话框上已经有添加了一个CEdit而且已经为这个CEdit映射了实例
CEdit m_ctrlEdit;只要你把CEdit改成你写的扩展类就可以实现你想实现的
strip 2002-02-24
  • 打赏
  • 举报
回复
1.你要新建一个MFC ActiveX Control Wizard的项目,然后从CEdit派生出来做你要做的那个edit control, 当这个项目编译生成成功之后,这个control就可以在vc中就可以在insert activex control的菜单中找到了

2. 你在vc中也可以使用DataGrid, 也可以添加列,你再试试
cwsuperman 2002-02-24
  • 打赏
  • 举报
回复
回答你的第一个问题吧,呵呵,这个问题我以前学习VC的时候也遇到过。当然你可以在OnCtlColor中进行操作,而只要对参数进行判断就可以准确的操作你需要改变的对象,而不是把所有的都改了。或者你直接创建一个继承于CEdit的类,这是一种比较正规的面向对象的方法,呵呵,如果你要原代码,我有时间可以贴一个
iamshuke 2002-02-24
  • 打赏
  • 举报
回复
HBRUSH CCtrlColorDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);

// TODO: Change any attributes of the DC here
if(pWnd->m_hWnd==m_Edit1Ctl.m_hWnd)
{
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(Red,0,255));
hbr=CreateSolidBrush(RGB(200,200,255));
return hbr;
}
if(pWnd->m_hWnd==m_Edit2Ctl.m_hWnd)
{
pDC->SetBkMode(TRANSPARENT);
pDC->SetTextColor(RGB(255,255,255));
hbr=CreateSolidBrush(RGB(0,0,0));
return hbr;
}

// TODO: Return a different brush if the default is not desired
return hbr;
}

16,473

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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