我想做的是:
class A
{
public:
double sum(double a, double b);
double max(double a, double b);
}
template <typename T>
class B
{
std::vector<T> data;
public:
double sum (double a, double b);
double max (double a, double b);
double average( MyFunction, double a, dobule b)
{
double sum = 0;
int n = data.size();
for ( int i = 0; i < n; i++)
sum = sum + data[i].MyFunction(double a, double b)
return sum / n;
}
}
Run Code Online (Sandbox Code Playgroud)
例:
double average( …
Run Code Online (Sandbox Code Playgroud) 我认为这是同样的问题:QScrollArea调整QWidget的大小
但没有解决方案.所以让我揭露问题.
我认为问题来自单一来源::大小提示和布局(http://qt-project.org/doc/qt-5.1/qtwidgets/qscrollarea.html#details)
第二个问题(缩小小部件)可以通过设置"c-> setSizeConstraint(QLayout :: SetMinimumSize);"来解决.
我目前正在寻找丢失滚动条的解决方案
这是显示我的问题的代码:
<c++>
#include <QWidget>
#include <QScrollArea>
#include <QVBoxLayout>
#include <QSpinBox>
class test2 : public QWidget
{
Q_OBJECT
public:
test2(QWidget *parent = 0) :QWidget(parent)
{
b = new QScrollArea(this);
c = new QVBoxLayout;
for (int i = 0; i < 10; i++)
{
a.push_back(new QSpinBox());
c->addWidget(a[i]);
}
c->setSizeConstraint(QLayout::SetMinimumSize);
b->setLayout(c);
b->resize(200, 200);
} …
Run Code Online (Sandbox Code Playgroud)