Ejemplo n.º 1
0
void FractionInputWidget::init(int fromRow, int fromCol) {
    InputWidget::init(fromRow, fromCol);
    PBFraction = new QPushButton( this );
    PBFraction->setSizePolicy(sizePolicy());
    PBFraction->setFocusPolicy(Qt::TabFocus);
    PBFraction->setText( tr( "/" , "separator numerator - denominator") );
    InputWidgetLayout->addWidget( PBFraction, fromRow+4, fromCol+1);
    connect (PBFraction, SIGNAL(clicked()), this, SLOT(fractionClicked()));
}
AdvancedCalwidget::AdvancedCalwidget(QWidget *parent):CalWidget(parent)
{
    Button* SinButton=CreatButton("sin",SLOT(FunctionClicked()));
    Button* CosButton=CreatButton("cos",SLOT(FunctionClicked()));
    Button* TanButton=CreatButton("tan",SLOT(FunctionClicked()));
    Button* ArcsinButton=CreatButton("arcsin",SLOT(FunctionClicked()));
    Button* ArccosButton=CreatButton("arccos",SLOT(FunctionClicked()));
    Button* ArctanButton=CreatButton("arctan",SLOT(FunctionClicked()));
    Button* ExpButton=CreatButton("exp",SLOT(FunctionClicked()));
    Button* Log10Button=CreatButton("log10",SLOT(FunctionClicked()));
    Button* Log2Button=CreatButton("log2",SLOT(FunctionClicked()));
    Button* CeilButton=CreatButton("ceil",SLOT(FunctionClicked()));
    Button* FloorButton=CreatButton("floor",SLOT(FunctionClicked()));
    Button* AbsButton=CreatButton("abs",SLOT(FunctionClicked()));
    Button* FacButton=CreatButton("fac",SLOT(FunctionClicked()));
    Button* IButton=CreatButton("i",SLOT(iClicked()));
    Button* FractionButton=CreatButton("x|y",SLOT(fractionClicked()));
    Button* AnswerButton=CreatButton("Ans",SLOT(AnsClicked()));
    Button* RandButton=CreatButton("rand",SLOT(RandClicked()));
    Button* EquationButton=CreatButton("x=?",SLOT(equationClicked()));
    Button* StatisticButton=CreatButton("∑x",SLOT(statisticClicked()));
    Button* PolyButton=CreatButton("ax+bx",SLOT(polyClicked()));

    //QLabel* label=new QLabel("\t函数功能键区\t");
    //QFont font=label->font();
    //font.setPointSize(font.pointSize()+2);
    //label->setFont(font);
    //label->setFrameShape(QFrame::StyledPanel);

    resultDisplay=new QLineEdit("0");
    QFont font = resultDisplay->font();
    font.setPointSize(font.pointSize() + 8);
    resultDisplay->setAlignment(Qt::AlignRight);
    resultDisplay->setReadOnly(true);
    resultDisplay->setFont(font);

    QGridLayout* rlayout=new QGridLayout;
    rlayout->addWidget(resultDisplay,0,0,1,4);
    rlayout->addWidget(SinButton,1,0);
    rlayout->addWidget(CosButton,1,1);
    rlayout->addWidget(TanButton,1,2);
    rlayout->addWidget(ArcsinButton,2,0);
    rlayout->addWidget(ArccosButton,2,1);
    rlayout->addWidget(ArctanButton,2,2);
    rlayout->addWidget(ExpButton,3,0);
    rlayout->addWidget(Log10Button,3,1);
    rlayout->addWidget(Log2Button,3,2);
    rlayout->addWidget(CeilButton,4,0);
    rlayout->addWidget(FloorButton,4,1);
    rlayout->addWidget(AbsButton,4,2);
    rlayout->addWidget(AnswerButton,5,0);
    rlayout->addWidget(FacButton,5,1);
    rlayout->addWidget(IButton,5,2);
    rlayout->addWidget(FractionButton,5,3);
    rlayout->addWidget(RandButton,3,3);
    rlayout->addWidget(EquationButton,1,3);
    rlayout->addWidget(StatisticButton,2,3);
    rlayout->addWidget(PolyButton,4,3);

    alayout=new QHBoxLayout;
    QFrame* line=new QFrame(this);
    line->setFrameShape(QFrame::VLine);
    line->setFrameShadow(QFrame::Sunken);
    //seperator->setFrameShape(QFrame::VLine);
    alayout->addLayout(layout);;
    //alayout->addSpacing(10);
    alayout->addWidget(line);
    alayout->addLayout(rlayout);


}