realfan:QFrame *DeviceFrame = new QFrame(frame2);   
这样写,DeviceFrame是局部变量
 this->DeviceFrame->show();中的DeviceFrame是成员变量
 (2015-11-10 12:31) 
 
非常感谢@论坛版主,我把我程序重新发一下。。。你看看
//构造函数里的代码
Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{ 
     ui->setupUi(this);     
     QFrame *frame1 = new QFrame(this);
     QFrame *frame2 = new QFrame(this);
     QPushButton *button12 = new QPushButton("Bad Block",this);
     QFrame *DeviceFrame = new QFrame(frame2);
     DeviceFrame->setGeometry(160,0,550,452);
     DeviceFrame->setStyleSheet("background-color:rgb(255, 255, 255);");
     //DeviceFrame->setVisible(false);
     //DeviceFrame->setHidden(true);
     DeviceFrame->hide();
     connect(button12,SIGNAL(clicked()),this,SLOT(DeviceFrame_show()));
}
//槽函数
void Widget::DeviceFrame_show()
{
    //this->DeviceFrame->setVisible(true);
    DeviceFrame->show();
}
//widget.h文件
namespace Ui {
class Widget;
}
class Widget : public QWidget
{
    Q_OBJECT
public:
    explicit Widget(QWidget *parent = 0);
    ~Widget();
    QFrame *frame1;
    QFrame *frame2;
    QFrame *DeviceFrame;
    QFrame *BadBlockFrame;
    QFrame *DetailInfoFrame;
    QFrame *FlashInfoFrame;
    QFrame *EraseCountFrame;
    QFrame *SMARTFrame;
    QPushButton *button11;
    QPushButton *button12;
    QPushButton *button13;
    QPushButton *button14;
    QPushButton *button15;
    QPushButton *button16;
public slots:
     void DeviceFrame_show();
}