VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 767|回复: 4

关于PageControl的一些疑问?

[复制链接]

4

主题

10

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
发表于 2020-1-18 23:00:01 | 显示全部楼层 |阅读模式
请问各位前辈

小弟想创建一套心理测验的程序

想采用PageControl来造

假设我有TabSheet三个~TabSheet1和TabSheet2是问题~~TabSheet3是成绩

问题来了

1. 若TabSheet1的选项都未勾,则跳下一页按钮不给按,选了才能按到TabSheet2

  这样方法该怎么造呢?

2. TabSheet1和2的选项分别有分数的,则统计到TabSheet3该怎么实现?

望各位前辈相助~谢谢
回复

使用道具 举报

0

主题

2

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-25 19:18:01 | 显示全部楼层
在TabControl中有个OnChanging事件,参数AllowChange用来控制是否可更换页面。

void __fastcall TForm1::TabControl1Changing(TObject *Sender,
      bool &AllowChange)
{
    if (!CheckBox1->Checked) {
        AllowChange = false;
    }
}

至于分数你写个函数判断一下,得出得结果写到第3页就OK
回复

使用道具 举报

4

主题

10

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-1-26 23:00:02 | 显示全部楼层
谢谢前辈指导

只是我是用PageControl而不是用TabControl的

以及按钮为RadioButton

所以我改成

void __fastcall TForm1::PageControl1Change(TObject *Sender,bool &AllowChange)
{
    if (!RadioButton1->Checked)
  {
        AllowChange = false;
    }
}

但却发生错误:
[C++ Error] Unit1.cpp(32): E2316 '_fastcall TForm1::PageControl1Change(TObject *,bool &)' is not a member of 'TForm1'

请问这是那里出问题呢?
回复

使用道具 举报

0

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-2-4 14:15:02 | 显示全部楼层
我觉得可不可以自定义一个struct包含两个量:bool isCheck,float count,分别记录是否勾选了及其勾选的项的分数是多少,到第二页时候判断isCheck就可以了,到第三页时候再用count就可以了,是不是这个意思?这可是最笨的方法了!
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-8-31 07:30:01 | 显示全部楼层
到头文件里面声明一下
__published:
void   __fastcall   TForm1::PageControl1Change(TObject   *Sender,bool   &AllowChange);
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表