今天在研究Git ,發現真的比Subversion好用太多了。
不過可惜的是只支援Linux 和Mac,windows要用msysgit。
剛好找到一篇非常詳細的中文教學
http://www.qweruiop.org/nchcrails/posts/49
2009年4月7日 星期二
2009年4月3日 星期五
2009年4月2日 星期四
Qt 啟動畫面(Splash Screen)
#include <QtGui/QApplication>
#include <QMainWindow>
#include <QPixmap>
#include <QBitmap>
#include <QSplashScreen>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
//啟動畫面
QSplashScreen *splash = new QSplashScreen;
//顯示圖片
QPixmap px(":/res/logo.png");
splash->setPixmap(px);
//遮罩圖
splash->setMask(px.mask());
splash->show();
QMainWindow w;
w.show();
//如果w顯示出來的話,才關閉啟動畫面
splash->finish(&w);
delete splash;
return a.exec();
}
2009年4月1日 星期三
Qt Opengl QMainWindow
glwidget.h
glwidget.cpp
mainwindow.h
mainwindow.cpp
main.cpp
opengl.pro
#ifndef GLWIDGET_H
#define GLWIDGET_H
#include <QGLWidget>
class GLWidget : public QGLWidget
{
public:
GLWidget(QWidget *parent);
~GLWidget();
void initializeGL();
void paintGL();
void resizeGL(int w, int h);
};
#endif // GLWIDGET_H
glwidget.cpp
#include "glwidget.h"
GLWidget::GLWidget(QWidget *parent)
: QGLWidget(parent)
{}
GLWidget::~GLWidget()
{}
void GLWidget::initializeGL()
{
qglClearColor( Qt::black );
}
void GLWidget::paintGL()
{
glClear( GL_COLOR_BUFFER_BIT );
glLoadIdentity();
qglColor( Qt::white );
glBegin(GL_TRIANGLES);
glVertex3f( 0.0f, 1.0f, 0.0f);
glVertex3f(-1.0f,-1.0f, 0.0f);
glVertex3f( 1.0f,-1.0f, 0.0f);
glEnd();
}
void GLWidget::resizeGL(int w, int h)
{
h = h < 1 ? 1 : h;
glViewport( 0, 0, (GLint)w, (GLint)h );
}
mainwindow.h
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QtGui/QMainWindow>
#include <QMenuBar>
#include <QAction>
#include <QApplication>
#include "glwidget.h"
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
private:
GLWidget *w;
};
#endif // MAINWINDOW_H
mainwindow.cpp
#include "mainwindow.h"
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
w=new GLWidget(this);
setCentralWidget(w);
QMenu *fileMenu = new QMenu("&File");
fileMenu->addAction("&Close", qApp, SLOT(quit()), Qt::CTRL + Qt::Key_Q);
menuBar()->addMenu(fileMenu);
}
MainWindow::~MainWindow()
{
}
main.cpp
#include <QtGui/QApplication>
#include "mainwindow.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
}
opengl.pro
QT += opengl
TARGET = opengl
TEMPLATE = app
SOURCES += main.cpp \
mainwindow.cpp \
glwidget.cpp
HEADERS += mainwindow.h \
glwidget.h
Qt Opengl
glwidget.h
glwidget.cpp
main.cpp
gl.pro
#ifndef GLWIDGET_H
#define GLWIDGET_H
#include <QGLWidget>
class GLWidget : public QGLWidget
{
public:
GLWidget();
~GLWidget();
void initializeGL();
void paintGL();
void resizeGL(int w, int h);
};
#endif // GLWIDGET_H
glwidget.cpp
#include "glwidget.h"
GLWidget::GLWidget()
: QGLWidget()
{}
GLWidget::~GLWidget()
{}
void GLWidget::initializeGL()
{
qglClearColor( Qt::black );
}
void GLWidget::paintGL()
{
glClear( GL_COLOR_BUFFER_BIT );
glLoadIdentity();
qglColor( Qt::white );
glBegin(GL_TRIANGLES);
glVertex3f( 0.0f, 1.0f, 0.0f);
glVertex3f(-1.0f,-1.0f, 0.0f);
glVertex3f( 1.0f,-1.0f, 0.0f);
glEnd();
}
void GLWidget::resizeGL(int w, int h)
{
h = h < 1 ? 1 : h;
glViewport( 0, 0, (GLint)w, (GLint)h );
}
main.cpp
#include <QApplication>
#include "glwidget.h"
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
GLWidget w;
w.resize(800, 600);
w.show();
return app.exec();
}
gl.pro
QT += opengl
TARGET = gl
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp \
glwidget.cpp
HEADERS += glwidget.h
訂閱:
文章 (Atom)