トップページ | 2006年5月 »

2005年9月24日 (土)

Qtプログラミング支援用秀丸マクロ

現時点でできること。

QT_Complete.mac

現在入力中の文字列に対して、

1.Qtクラス名の補完
2.変数名からQtクラス名を求め、メンバ関数名を補完
3.Qtクラスを継承したクラスのメンバ関数及び継承元のQtクラスのメンバ関数名の補完
 (Qtクラスが直接の継承元であるもののみ。多重継承には対応しない。)
4.自作クラスのメンバ関数名の補完
5.Qtクラスの関数一覧から一致するものを選んで補完
6.単なる文字列とみなし、一致する文字列をファイル中から探して補完

以上の動作を、現在編集中のファイル及び、インクルードされているファイルを元にして行うことができる。

QT_Include.mac

現在編集中のファイル中で使用されているQtクラス名を調べ、必要な #include 文を自動的に生成する。
挿入する場所は、ファイルの先頭から初めて現れる空行の位置。

QT_Help.mac

現在カーソルがある文字列(メンバ関数名、変数名、Qtクラス名)からQtクラス名を得て、ローカルに保存済みの対応するQtリファレンスのファイルを通常使用するブラウザで開く。

| | コメント (0) | トラックバック (0)

2005年9月19日 (月)

smbmount使用後、再起動できなくなる問題

 SL-C3000 で smbmount を利用してファイルの共有を行った後、再起動をかけるとシステムが立ち上がらなくなる問題は、smbumount の代わりに umount コマンドを使えばOKとのこと。

| | コメント (0) | トラックバック (0)

スクリーンセーバーの停止

/home/zaurus/Settings/qpe.conf の中の

[Screensaver]
Interval_AC_ScreenSaver = 1800

の1800の所を0にして保存し、再起動をかければOK。

| | コメント (0) | トラックバック (0)

メニューバーにツールボタンを表示したい

 と思ってあれこれやってみたんですが、どうにもうまくいきません。どうにも分からないので、人様のソースを参考にさせていただいたら...(・o・)。思わず目が点に。

 発想の転換というやつですね。メニューバーにツールボタンを表示するんではなくて、ツールバーにメニューを登録すればよかったんですね。結局以下のようにすることで解決しました。

1.QHBoxLayout を作成
2.ツールバーを作成し、メニューを登録
3.もう一本ツールバーを作成し、ツールボタンを登録
4.2本のツールバーを QHBoxLayout に登録

| | コメント (0) | トラックバック (0)

OKボタンのキーコード

 OKボタンのキーコードですが、シャープの資料では Qt::Key_Return から Qt::Key_F33 に変更されたということになっているんですが、うまく拾えなかったので調べてみたら Qt::Key_Return のままでOKでした。どうなってるんでしょう?

| | コメント (0) | トラックバック (0)

シグナルとスロット

 それにしても、シグナルとスロットという仕組み、実にいい加減(本来のいい意味で)で便利でいい感じです。ただ、これになれてしまったら、ふつうのC++には戻れないような気がして怖いですが・・・(^^;。

| | コメント (0) | トラックバック (0)

起動時の画面レイアウトに関して

 レイアウトマネージャーを利用してレイアウトしている場合、起動時だけ思い通りに表示されないことがあります。この場合、一度、インプットスタイルとビュースタイルを切り替えてやればうまく表示されるようになります。が、それでは意味がないので考えてみました。

 インプットスタイルとビュースタイルを切り替えてやれば正常になるということは、ResizeEventを強制的に発生させればいいわけです。通常 main()は、

int main( int argc, char* argv[] )
{
     QPEApplication myapp( argc, argv );

     myMainWindow w( 0 );
     myapp.showMainWidget( &w );

     return myapp.exec();
}

こんな感じですが、showMainWidget を呼び出した後を少し変えてやればうまくいきます。

int main( int argc, char* argv[] )
{
     QPEApplication myapp( argc, argv );

     myMainWindow w( 0 );
     myapp.showMainWidget( &w );

     QSize *sz = new QSize( 640, 480 );
     QApplication::sendEvent( &w, new QResizeEvent( *sz, w.size() ));

     return myapp.exec();
}

 実際のところ、指定するサイズは何であっても、内部で適当なサイズに変えてくれるようですので、( 640, 480 )でなくてもかまわなかったと思います。

| | コメント (0) | トラックバック (0)

はじめに

 せっかく記録しておいたメモが、ザウルスの死亡(もしくは記憶喪失)でダメになってしまうという経験を何度かしたので、とうとうブログに手を出すことにしました。

 自分の備忘録としてだけでなく、誰かの役に立つことがあればいいと思っていますが、どうなることやら。というか、いつまで続くことやら・・・。

| | コメント (0) | トラックバック (0)

トップページ | 2006年5月 »