■ VisualC++(MFC限定)相談室 MFC6.dll■
レス数が1000を超えています。これ以上書き込みはできません。
0001MFC
NGNGhttp://pc3.2ch.net/test/read.cgi/tech/1028553308/
0002デフォルトの名無しさん
NGNG0003デフォルトの名無しさん
NGNG?
0004デフォルトの名無しさん
NGNGすでに削除依頼済ですので、今後は書き込まないようにお願いします。
本物のスレは↓こちら。
http://pc3.2ch.net/test/read.cgi/tech/1028553308/
■ VisualC++(MFC限定)相談室 6■
0005デフォルトの名無しさん
NGNG次スレってことでしょ?
0006デフォルトの名無しさん
NGNG00071
NGNG目立ちたくてスレたてますた。
今後このようなことがないよう致します。
0008デフォルトの名無しさん
NGNG0009デフォルトの名無しさん
NGNGそろそろちょっと変えてみようかなーと思っただけで・・・
0010デフォルトの名無しさん
NGNG0011デフォルトの名無しさん
NGNG名前変えると荒らされるぞ。どっかみたいに。
0012デフォルトの名無しさん
NGNGというか・・・
0013デフォルトの名無しさん
NGNG0014デフォルトの名無しさん
NGNGに分けて、それぞれにビューを表示したいのですが、
以下のようにすると最初に表示した段階で左の列が潰れてしまいます
左の列幅と右の列幅を3:1で最初は表示したいのですが
どう修正すればいいか教えてもらえないでしょうか
CSplitterWnd m_split;
CSplitterWnd m_subSplit;
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
CRect rect;
GetClientRect(rect);
m_split.CreateStatic(this, 1, 2);
m_subSplit.CreateStatic(&m_split, 2, 1, WS_CHILD | WS_VISIBLE
| WS_BORDER, m_split.IdFromRowCol(0, 0));
m_subSplit.CreateView(0, 0, RUNTIME_CLASS(CView1),
CSize(3*rect.Width()/4, rect.Height()/2), pContext);
m_subSplit.CreateView(1, 0, RUNTIME_CLASS(CView2),
CSize(3*rect.Width()/4, rect.Height()/2), pContext);
m_split.CreateView(0, 1, RUNTIME_CLASS(CView3),
CSize(1*rect.Width()/4, rect.Height()), pContext);
return TRUE;
}
0015デフォルトの名無しさん
NGNGでどうよ。
0016デフォルトの名無しさん
NGNGファイルからビットマップを読み込んで
ダイアログボックスのピクチャボックスで表示したいのですが、
ピクチャボックスのサイズがわからずフォームにあふれてしまいます。
ピクチャボックスのサイズってどうやったらわかるのでしょうか?
よろしくお願いします。
0017デフォルトの名無しさん
NGNGGetWindowRect
001816
NGNGありがとうございました。
0019デフォルトの名無しさん
NGNG出来ました
ありがとうございました
0020デフォルトの名無しさん
NGNG複数のビューを表示するときに
入力するキーによって
受け取るビューを変えたいのですが
どうしたらいいでしょうか
たとえば数字キーなら左のビュー
エンターキーなら右のビューといった感じです
0021デフォルトの名無しさん
NGNGフォーカスがあるビューがメッセージ受け取るから、
両方でWM_KEYDOWNとか受け取ってキーによって振り分けりゃいいんじゃない?
例えば右のビューにフォーカスがあって数字キーが押された場合、
左のビューへSendMessageするとか。
002220
NGNG他のビューのSendMessageを起動するには
どのように記述すればいいのでしょうか
CView1とCView2があった場合
CView1のOnKeyDown内から
CView2のSendMessageを呼び出すことができません
0023デフォルトの名無しさん
NGNG他のビューへのポインタを取得してSendMessageすりゃいいじゃん。
0024デフォルトの名無しさん
NGNGCMainFrameでやった方が楽では?
0025デフォルトの名無しさん
NGNG0026デフォルトの名無しさん
NGNG>>24は無し。聞かなかったことにして。
0027デフォルトの名無しさん
NGNGCDocument::GetNextView()とか知ってんのかな……
002820
NGNG有難うございます
その通りでした
GetDocumentとかと同じでGetViewとかあるのかと思って
調べてたらCRichEditViewのだったりするしで
悩んでるところでした
002920
NGNGすいません。また問題が出てきました。
GetNextView でゲトしたビューがどのビューなのかは
どのようにすればわかるのでしょうか。
すべてのビューにそれぞれが区別できる名前のようなものを
返す関数を作っといて、GetNextViewで得るごとにそれを呼び出して
調べていくという方法を考えているのですが、
もっと手っ取り早い方法があるのでしょうか
0030デフォルトの名無しさん
NGNG0031デフォルトの名無しさん
NGNG0032デフォルトの名無しさん
NGNGそのピクチャボックスの中をOpenGLを使って描画しているのですが
アニメーションするとちらついてしまいます。
このチラツキをなくすにはどうすればよいでしょうか?
0033デフォルトの名無しさん
NGNGこれをマウスで移動できるようにする方法ってあるでしょうか?
左右の枠の部分をつかんで移動できるようにしたいのです。
ご存知の方教えてください
0034デフォルトの名無しさん
NGNGOpenGLはよくわからんけど、InvalidateRectとかその辺が役に立つかもしれない。
>>33
WM_LBUTTONDOWN捕まえればいいと思うけど。
0035デフォルトの名無しさん
NGNGOnNcHitTestでおまじない唱える
003629
NGNG知りませんでした
どうもありがとうございます
>>31
MSDNライブラリ調べてますよ
ただ他人のソース読んでて知らない関数やら出てきたときは
役に立つんですが、このような動きをする関数を知りたいってときに
うまく調べられません。検索時にキーワードとなるようなものを
まだあまり知らないので
0037デフォルトの名無しさん
NGNGこれを右クリックしても出ないようにする方法ってありますか?
あとHTML表示用のコントロールってないんですかね?
0038デフォルトの名無しさん
NGNG勝手に他人のサイトを直リンク!!
「法的根拠はない!!」
「だから直リンしてます」
ハァ?
ネチケットも守れない痛い厨のサイト晒し
0039デフォルトの名無しさん
NGNG0040デフォルトの名無しさん
NGNGhttp://www.codeguru.com/ieprogram/index.shtml
ここの
How to Modify/Remove Right-Click Menu in IE WebBrowser Control
って記事参照。
0041デフォルトの名無しさん
NGNGネチケットどころか常識的な事ですら理解してないのが一杯いる2chで言われても…
0042デフォルトの名無しさん
NGNGDragAcceptFiles(TRUE)を呼ぶ のと WS_EX_ACCEPTFILES をつける
のはどう違うんですかね?
004337
NGNGうぉ!サンクス!
ただisThisOurBrowser()うんたらのとこがよくわからなかった・・・
別にこれでいいと思うんだけどどうかな。
-------------------------------------------------------
BOOL CHtmlTestView::PreTranslateMessage(MSG* pMsg)
{
if ( (WM_RBUTTONDOWN == pMsg->message) ||
(WM_RBUTTONDBLCLK == pMsg->message) ){
return TRUE;
}
return CHtmlView::PreTranslateMessage(pMsg);
}
-------------------------------------------------------
0044デフォルトの名無しさん
NGNGisThisOurBrowser()の上の説明を読むと、ネストされたフレームの場合を考慮してるみたいね。
<FRAMESET>とかのことじゃないかな?
0045デフォルトの名無しさん
NGNG0046デフォルトの名無しさん
NGNGうるせえ!冬坊が!
0047デフォルトの名無しさん
NGNGVC6.0でSDI環境で作業したいのですが
手段はないでしょうか
0048デフォルトの名無しさん
NGNG0049デフォルトの名無しさん
NGNGそいつがあるファイルを出力するまで
もう一方のプロセスで「しばらくお待ちください」と書かれた
ダイアログを表示しておいて、ファイルが出力されれば
それを自動的に消したいのですがどのようにしたらいいのでしょうか。
しばらくお待ちくださいとだけ書いてOKボタンとキャンセルボタンを取り去った
ダイアログをCDialogの派生でCWaitDlgとして作って
表示するのはDoModal()みたいだったので、DoModal()中に
以下のようにして一定時間ごとにファイルが出来てるかチェック
して、できてればダイアログを閉じようとしてるんですが、
呼び出してもダイアログが表示されません。
たぶんDoModal()に書いてることがおかしいんだとは思ってるんですが、
どうすればいいのかわかりません。
int CWaitDlg::DoModal()
{
while(1){
if( ::GetFileAttributes(ファイル名) != 0xFFFFFFFF ){
remove(ファイル名);
break;
}
Sleep(1000);
}
return 0;
}
0050デフォルトの名無しさん
NGNGDoModalを抜けてからじゃないとダイアログ表示されないよ。
ダイアログを表示してから何か処理したかったらWM_INITDIALOGのハンドラに書こう。
あまり上手な設計とは思えんが…。
0051デフォルトの名無しさん
NGNG思わず笑ってしまった。
プログラムは練習のために書いてんだよな?
0052デフォルトの名無しさん
NGNG下のようにしてみて
DoModal()を呼び出してみても
止まってる感じはするんですが
ダイアログが表示してくれません。
BOOL CWaitDlg::OnInitDialog()
{
CDialog::OnInitDialog();
while(1){
if( FileExist("visu_finish") ){
remove("visu_finish");
break;
}
Sleep(1000);
}
EndDialog(0);
return TRUE;
}
>>51
ヽ(`Д´)ノウワァァァァン練習のためじゃないんだよぅ
でも人に渡したりするようなものじゃないです
自分が使うためのソフトです
0053デフォルトの名無しさん
NGNG#define FileExist(s) ::GetFileAttributes(s) != 0xFFFFFFFF
こういうことです
0054デフォルトの名無しさん
NGNGお前馬鹿だろ…
OnInitDialogで無限ループ組んでていつWM_PAINTとか受け取るつもりだ?
ワーカースレッド作れよ。
005552
NGNGダイアログ表示中はユーザに何もしてほしくなくて
スレッドみたいに並列処理のイメージをもっていなかったので
ダイアログ表示、ファイルチェック、ダイアログ消去の順番で
出来ると思ってました。
スレッドにしたらできました。ありがとうございます
0056デフォルトの名無しさん
NGNGWindows2000+ServicePack2ではきちんと動くのですが
Windows2000のノーマルだと動作があやしくなってしまいます。
具体的には
リストボックスがパチパチ点滅してしまい、選択できない。
どっかで暴走してるように重くなる。
という現象がおきています。
これはどのようなことが考えられますでしょうか?
0057デフォルトの名無しさん
NGNGサービスパックで修正されたバグ
0058デフォルトの名無しさん
NGNGなるほどServicePackのバグということで解決と思ったのですが、
windows2000のノーマルでも動いてしまいました・・・(TT)
またいままでとはまったく別のマシン
win2000+ServicePack2
XPノーマル
でも動作できませんでした。
これにはどのような原因が考えられますでしょうか?
もちろんともにVS.netは入れていません
0059デフォルトの名無しさん
NGNG0060デフォルトの名無しさん
NGNG> これにはどのような原因が考えられますでしょうか?
多分、貴方のバグ。
0061デフォルトの名無しさん
NGNGふつうにリストボックス貼り付けただけのダイアログでもそうなりますか?
>どっかで暴走してるように重くなる。
これは自分のバグでしょ。
0062デフォルトの名無しさん
NGNGどっかで無限ループしてるぽい。だから入力も受け付けないんだろう<選択できない。
0063デフォルトの名無しさん
NGNG任意の位置に表示したいんだけど、やっぱ自作するしかない?
その場合はリッチテキストコントロールを継承して作るのかな。
どこかのサイトで、そういった自作クラス公開してないかな・・・
結構需要あるように思うんだけど。
0064デフォルトの名無しさん
NGNG0065デフォルトの名無しさん
NGNG006663
NGNGどのクラスがそれに当たるのか簡単にわかるもんかな。
とりあえずソースダウンロードしてみようっと。
0067デフォルトの名無しさん
NGNG0068デフォルトの名無しさん
NGNG0069デフォルトの名無しさん
NGNG転がってませんか?
www.openssl.org
0070デフォルトの名無しさん
NGNG調べてないけどCodeGuruにないか?
0071MFC使ってるとかの判定
NGNG判定にはどのようにすればよいのでしょうか?
MFCのDLL使用の場合は
#ifdef _AFXDLL
で、できるようですけど。
よろしくお願いします。
007271
NGNG0073デフォルトの名無しさん
NGNG*.dspファイルに書かれていることだし。
何か間違った認識をしているような気がしてならない。
007471
NGNGやりたいのはプログラムのソースを使いまわしたいときに
#include "stdafx.h"
がいるときといらないときがあるためです。
アップウィザードでMFCのプロジェクトを作った場合 stdafx.h が必要ですけど(pchの設定そのままの時)
そうでない場合や他のコンパイラを使用する場合には stdafx.h は不要ですので、
#ifdef _AFX
#include "stdafx.h"
#endif
こんな感じで使いたかったんですけど。(ダミーの stdafx.h 作ったほうがはやい?)
0075デフォルトの名無しさん
NGNGおいおいstdafx.hはMFCを使っているかどうかは関係ないぞ。
MFCを使わないWin32アプリでも使う。
0076デフォルトの名無しさん
NGNG_MT
_DLL
_AFX
これで大抵いける。
だが、これと>>74のpchの話のつながりが分からないぞっと。
0077デフォルトの名無しさん
NGNGプリコンパイル済みヘッダって知ってますか(藁
007871
NGNG>>75
スマソ、他のコンパイラを使用する場合とかです。
>>76
もう帰っちゃったので明日試してみます。でも、_AFXは AfxVer.h で定義されていて
stdafx.hをインクルードしたあとでなければ判断できないのでは
それとも自分でコンパイルオプション(/D)を指定したほうがいいんでしょうか?
0079デフォルトの名無しさん
NGNGすんません、どうゆうつっこみかよくわからないんで説明してください。
0080デフォルトの名無しさん
NGNG最初はMFC不使用/使用/DLLを区別したいとあったはずだが
いつのまにかプリコンパイル済みヘッダの使用/不使用の話に。
とりあえずMFCスレとは関係ないということはわかったが・・・
コンパイラを変えるならVC固有のマクロに頼ること自体おかしいと思う。
008171
NGNGやりたいことは>>74での stdafx.h のインクルードをする・しないの判断です。
VCのアップウィザードでプロジェクトを作るとプリコンパイルドヘッダーの設定で stdafx.h が
指定されます。そのため .cpp に #include "stdafx.h" が必要になります。
で、この .cpp(1つぐらい) を他のプロジェクトでも使用するとき、そのプロジェクトが
BC++Builderとかの場合は、ふつう #include "stdafx.h" は、いりませんし、ありません。
このようにVCプロジェクトとBCBプロジェクトが.cppを共有しているような場合に
stdafx.h のインクルードをする・しないの判断ができるのかしりたかったのです。
>最初はMFC不使用/使用/DLL
これはVCの時はほとんどMFCばかり使ってるのと、アップウィザードでMFC、DLLを使用に
するとコンパイルオプションで /D _AFXDLL が指定されるのがわかったので、ほかの場合にも
なにか定義されているのかもと思ったからです。
スレ違いになってきたので、このことについてはこれまでにします。
0082すごくしょしんしゃ
NGNGマイコンピュータのようなものを作りたいのですが、どういう風に作ったらいいかわかりません。
具体的には、今リストコントロールを用いてそれらしいものを作っていたつもりだったのですが、
「大きいアイコン」や「小さいアイコン」の表示の時にマイコンピュータのように、マウスでアイコンを動かして規則的でない任意の位置に動かせません。ドラッグ状態にもならんです。
それと、ドラッグについて質問です。外からドラッグしてこられたものが、ドロップされた、というのは
OnDropFiles(HDROP hDropInfo)
を利用することでなんとか処理することができましたが、逆に、自分の作っているアプリから、(デスクトップや他のアプリケーションなどに)外にドラッグしてドロップする、という方法がわかりません。
方法を知ってらっしゃる方がいましたら、お願いします。。
0083デフォルトの名無しさん
NGNG>リストビュー
作成時にLVS_AUTOARRANGEを外す。
>ドラッグ
COleDropSourceとかその辺調べてみな。
0084すごくしょしんしゃ
NGNGどうも、ご親切にありがとうございます。
キーワードを頼りにもう一度調べてみます!!
0085すごくしょしんしゃ
NGNGvoid C***List::PreSubclassWindow()
{
// TODO: この位置に固有の処理を追加するか、または基本クラスを呼び出してください
this->ModifyStyle(LVS_AUTOARRANGE,NULL);
CListCtrl::PreSubclassWindow();
}
のようにしてLVS_AUTOARRANGEを削除したつもりなんですが、どうも変化がないです。
ここで他のスタイル変更などは試してうまくいっているので、恐らく変更のタイミングじゃないと思うんですが・・・
0086デフォルトの名無しさん
NGNGアイテムのD&Dは自前で動かしてたような…。
http://www.codeguru.com/listview/DragDropListCtrl.html
0087忘れた……
NGNGLANにぶら下がっているマシンの自分のアドレスが欲しいのですが欲しいのはネットワークアドレスじゃなく
グローバルアドレス。gethostname→getbyname(だったかな?)でとるとネットワークアドレスになってしまいます。
この状態でも確認くんなどにつなぎに行くとちゃんとGIPがみれますがこれが欲しい。
この場合HTTPでつなぎに行ったときにルータのNATやらで与えられるIPだからアプリからはどうしようもないのかな。
どうなんでしょ。この変詳しい人いますか?
0088デフォルトの名無しさん
NGNGそりゃゲートウェイやルータのIPアドレスでしょ?
0089デフォルトの名無しさん
NGNGこんなんでましたけど。
http://forums.belution.com/ja/vc/000/065/62s.shtml
0090すごくしょしんしゃ
NGNG半透明になってアイコンがドラックされた状態になってマウスカーソルとともに動いていくっ
っていう動くではなく、
>>85で言いたいのは、自動整列になっていないデスクトップやマイコンピュータのように、
自由にアイコンを配置できるようなことです。
0091デフォルトの名無しさん
NGNG抽象的すぎてよく分からん…
0092デフォルトの名無しさん
NGNGPreCreateWindowじゃなくて?
PreSubclassWindowが呼ばれたときってまだCreateは呼ばれてないと思うけど…。
0093すごくしょしんしゃ
NGNGダイアログにVCのエディタで作った(配置した?)リストコントロールなんですけど・・。
0094デフォルトの名無しさん
NGNG0095デフォルトの名無しさん
NGNG0096デフォルトの名無しさん
NGNGそれは LVS_EX_* の話よん
0097デフォルトの名無しさん
NGNG> 欲しいのはネットワークアドレスじゃなくグローバルアドレス。
最近は、こういう言い方するのか ?
0098デフォルトの名無しさん
NGNG0099デフォルトの名無しさん
NGNGネットワークプログラミングスレあるんだから。
自分の質問の要点はどこなのか冷静に切り分けていこうや。
>>85
そのソースみたところリストコントロールの派生クラスなんだから>>92の通りだ。
つーかスタイル変更したいだけならOnInitDialogあたりで
m_list.ModifyStyle(・・・); // m_listはCListCtrl
でいいじゃないか。
0101デフォルトの名無しさん
NGNG>>87で「板違い(スレ違いの間違いだろうな)なきもしますが」と
自覚してるのかと思いきや、ちょっと指摘されたらこの態度かよ・・・
0102デフォルトの名無しさん
NGNGいいから消えろよ。テイノウ。
すこしは役に立つこと書けや。
スレ違いの間違い?ばかオマエ?
板違いのつもりで書いたんだよ。とっとと逝けや
0103デフォルトの名無しさん
NGNG( ´,_ゝ`) 煽り・叩きは厨房板へどうぞ。
0104デフォルトの名無しさん
NGNG0105デフォルトの名無しさん
NGNGOffice2000や.netみたいなツールバー(Rebarっぽいツールバーバンドでのリサイズ&
フローティング&ツ−ルバーの自動サイズ変更)はサポートされてるんでしょうか?
0106デフォルトの名無しさん
NGNG>104
うっさい、ハゲ
0107デフォルトの名無しさん
NGNGVC6でも実現できると思いますが。
0108デフォルトの名無しさん
NGNGいいから消えろよ。テイノウ。
少しは役に立つこと書けや。
0109105
NGNGVC6だとやっぱり、CToolberにツールバーバンドでのリサイズ&
ツ−ルバーの自動サイズ変更の処理をオーバーライズさせるですよね。
(Rebar使うとフローティングにならなかった様な気がするので・・・)
0110デフォルトの名無しさん
NGNG6.0です
0111デフォルトの名無しさん
NGNG0112デフォルトの名無しさん
NGNGまったく状況がわからん。
質問するならもっと状況を説明しろよ。
0113デフォルトの名無しさん
NGNG0114デフォルトの名無しさん
NGNG0115デフォルトの名無しさん
NGNGサイズ可変ダイアログでタブコントロールがリサイズ時にちらつくのは何故でしょう?
同じダイアログに貼り付けたツリーコントロールはリサイズしても全くちらつきません。
0116デフォルトの名無しさん
NGNG再描画してるからじゃないの?
0117115
NGNGですよねぇ。
ツリーコントロールがちらつかないのは内部でちらつかないように処理してるのかな?
ちなみにCWnd::MoveWindow()でリサイズしてます。
bRepaintをFALSEにするとちらつかないけど再描画もされない…(当たり前か)。
0118デフォルトの名無しさん
NGNGWM_ERASEBKGNDとか
0120109
NGNGおおー、なるほどReBarのほうをオーバーライズするんだ。
うん?フローティング時のSIZE_DYNAMICは効かなくなるのか?
早速TearoffReBarを移植してみよっと!♪
本当に助かります。ありがとうございます。
0121デフォルトの名無しさん
NGNG0122デフォルトの名無しさん
NGNG聞 い た こ と な い け ど
0123デフォルトの名無しさん
NGNG三単現だろう。
本人とVC++以外の第三者がオーバーライドするのだ。
コワー。
0124デフォルトの名無しさん
NGNG謝れとは言いませんがこちらもちょっと大人気ないのですが
ムカついたので友達のハッカーに頼んであなたの個人情報を
探してもらうことにしました。あ、もう遅いですよ。
もうすでに友達解析始めちゃってますから・・・(^^;
ちなみにこれは自慢じゃないんですがその友達は日本でも
5の指に入るくらいの凄腕のハッカーです。
この前彼の家に遊びに行ったらものの5分で他人の個人情報を
抜き取っていました。
彼にとってそれくらい赤子の指をひねるくらいの行いなんですよね(爆)
これであなたもいっかんの終わりってやつですね(^^;
まあせいぜい後悔してくださいね。
それからもう二度と荒らしはしないこと(その友達は荒らしが大嫌いらしいです。
荒らしを見つけたら即解析に入るみたいです。(^^;)
それでは、う〜ん二日後くらいかな?また例のところに来てくださいね。
あなたの住所本名住所その他もろもろのせておきますんで(笑)
あ、警察とかに言ったって無駄ですよ。
あなたは荒らし(犯罪)なんだから通報したところで捕まるのは アナタです
友達は掲示板のログを自在に操ることができるんです。
と、いうことでbye♪(^O^)/~~
0125デフォルトの名無しさん
NGNG漏れもハックしてくれ。頼む。
0126デフォルトの名無しさん
NGNG最近増えてるけど、リバイバルブーム?
0127デフォルトの名無しさん
NGNG作り方をご存知の方いませんか?
codeguruやcodeproject探したが見つかりませんでした
0128デフォルトの名無しさん
NGNGcodeguruのサンプルをちょっとだけ改造すればできるよ
0129デフォルトの名無しさん
NGNGcodeguruを見てみましたが、見当がつきませんでした。
何かヒントをいただけないでしょうか。
よろしくお願いします。
0130デフォルトの名無しさん
NGNG猫でも分かる〜に書いてあるよ。
0131デフォルトの名無しさん
NGNGホントか?
http://www.codeguru.com/menu/index.shtml
ココ見て分からんようなら他さがせ。
0132デフォルトの名無しさん
NGNGnafxcwd.lib(afxmem.obj) : error LNK2005: "void __cdecl operator delete(void *)" (??3@YAXPAX@Z) はすでに LIBCMTD.lib(dbgdel.obj) で定義されています
Debug/mm2080.exe : fatal error LNK1169: 1 つ以上の複数回定義されているシンボルが見つかりました
このようなエラーがたびたび出てくるんですが解決方法は
ttp://hornet-web.hp.infoseek.co.jp/tips/tips.html#10
こちらで正解なんでしょうか?
一度ワークスペースからファイルを外して、再度構築したら直ってしまったりと、
ちょっとよくわかりません。
0133デフォルトの名無しさん
NGNGmainで常に走っているスレッドがあります
そのスレッドはどこで生成すればよいのでしょうか?
InitInstance()でしょうか?
またはmainの内容を
InitInstance()に書けばよいのでしょうか?
あと,キー入力を
そのスレッドに渡したいのですが
どのように実装すべきでしょうか?
MFCはイベントドリブンとききました
上のようなことは不可能でしょうか?
0134デフォルトの名無しさん
NGNGJavaにできることだったら、多少めんどくさくなろうともなんでもできる。
詳しいことがわからないから断言はできないけど・・・
>スレッド
InitInstanceで多分大丈夫。InitInstance中でもいろいろな
処理がWizardによって追加されてるので、前後関係をよくみながら。
>キー
やり方はいろいろあると思うが、スレッド中でメッセージループ作って、
PostThreadMessageで投げるとか
0135デフォルトの名無しさん
NGNGClassWizardでメッセージマップを開いても「クリック」と「ダブルクリック」の
イベントしか出てこないし、「クリック」だと離した後に起こるイベントですし。
0136135
NGNGそのクラスで PreTranslateMessageをオーバーライドして
WM_KEYDOWNとか捕まえて処理する、んでしょうか?
0137135
NGNG少しもちつきます。
0138135
NGNGPreTranslateMessageじゃなくて、CButtonを派生させたクラスの
WM_LBUTTONDOWNやらWM_LBUTTONUPでやるっぽいすね。
0139135
NGNGどうやって押されてる/離された を通知してイベントを起こすのかが、
今の悩みなわけですが・・・教えていただけませんでしょうか。
0140デフォルトの名無しさん
NGNG親ウィンドウにSendMessageしてやったらいいんでないかね。
0141135
NGNG実は SendMessageは今までに何度か使おうとして
挫折してたから、今いろいろ使い方を調べてるとこです。
0142デフォルトの名無しさん
NGNGもうちょっとでクリスマス。。★彡
パートナーは見つかりました?(o^.^o)
http://petitmomo.com/mm/
ここがちょっぴりエッチ系のめぐが運営している出会いサイトです。
もしよかったら使ってみて、、、
ヨロシクです。
めぐ(^o^)-☆
0143135
NGNGはじめてSendMessageつかえたよー
0144デフォルトの名無しさん
NGNG#define XXXX (WM_APP+1)
とか。
0145デフォルトの名無しさん
NGNG前者はプロセス間、後者はプロセス内で使うといいかなー、
とか思ってたけど違うのか?
0146デフォルトの名無しさん
NGNGWM_APP through 0xBFFF Messages available for use by applications.
らしい。
0147デフォルトの名無しさん
NGNGMFCプログラマだとやっぱり>>141みたいなかんじなのかな?
(悪い意味じゃなくてね)
0148デフォルトの名無しさん
NGNG0149デフォルトの名無しさん
NGNG0150デフォルトの名無しさん
NGNG俺はSDKほとんどつかったことないけどSendMessageはよく使うぞ。
皆がみんな「わかんない」だったらそういう印象受けるけど、
分かってないのは質問者だけっしょ?w
0151きよみ
NGNG0152デフォルトの名無しさん
NGNGMFC=SendMessage使わないじゃないよ、知らない人向けに言っておくと。
メッセージ関連はクラスメンバとして隠蔽化されてるから
内部的にSendMessage使いまくりなのを知らない人も初心者にはいるだろうけど。
0153デフォルトの名無しさん
NGNG0154デフォルトの名無しさん
NGNG0155デフォルトの名無しさん
NGNG0156154
NGNGだからそれを日本語に変換する方法をおしえてと・・・
日本語っていってもエラーコード13を文字列の13に変換したいっていってるんじゃないよ。
0157デフォルトの名無しさん
NGNGそれの基本クラスメンバを見てみる。
0158デフォルトの名無しさん
NGNGVC++でTCP/IPを扱うお勉強するには
どんなプログラムを試作するのがいいと思いますか?
0159デフォルトの名無しさん
NGNGTCP/IPを扱うプログラム。
0160デフォルトの名無しさん
NGNG例外クラスのGetErrorMessageか、
APIのFormatMessageだよ、カス
0161145
NGNGあそっか。ウィンドウクラスを基準にするってことか。
WM_USERの方はそれでいいけどWM_APPの方は何度読んでも分からない
文章だよね。"available for use by applications"って
当たり前じゃん!まあMFCに作らせたウィンドウならWM_APPの方が
安全ってことかな。
0162デフォルトの名無しさん
NGNG, -──--- 、..____
,、-‐'"::::::::::::::::::::::::::::::::::::::::::::::`` ー---、
/:::::::::::::::::::/:::::::::::::::::::::::::::/::::::;:ィ´:::::::::::|
/:::::::::::::::::::/:::::::::::::::::::::::::::/:::::::/:/::::::::::::ミヽ
/::::::::::::::::/:::::::::::::::::::::::::::::/::::::::::/::::/:::::::::/:/:ハr'ヽ
/::::::::::::::::/:::::::::::::::::::::::::::::::/::::::::::/::::/::::::/:/:::レ::イ::T:l
/::::::::::::::::::::::::::::::::::::::::::::::::::::::::::;ィ:::|:::::ハ::::::|::|::/|::::::|:::::::|
/::::::::::::::::::::::::::::::::::::::::__::::::::::::::://|::ト、::L|::::|!:||:!/::::/::::|::!
|:::::::::::::::::::::::::::::::::::::r'rヘヽ::::彡 |:! v!|--,.、`゙//:::::/リ
|:::::::::::::/::::::::::/:::::::{ (⌒ |:r'´ ` 、l:/ ///l:/〃
/:::::::::::/::::::::::/::::::::;ハヽ. |:! |'´ '′
/::::::::::/:::::::::::/:::::::/:::::::L° ゙、
/::::::::/:::::::/:::/::::::/::::::::::| l _ ヽ
/::::::::/:::::::/:::/::::::/::::::::::::| l ____r'´ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
/:::::/:::::::/::::::::::::/::::::::::::::| `7′ < よくわからないモノを
/::::::/::::::::::/:::::::::::::/ :::::::::::/ / | 無理して使うからよ
/:::::/::::/::::/::::::::::::::/ :::::::::::/二`ヽ、 `iヽ 、____/ \_________
/:::::::::/:::/::::::::/::::::::::::彡.:::::::::::/三ミヽ、 ``=ヽ
|:::::::::|::/::::::::::::/:::::::/:::/彡:::::∧`ヽ、 \三ミr'ヽ、
0163デフォルトの名無しさん
NGNG0164デフォルトの名無しさん
NGNG勉強目的だったら既存のクラス使わないでAPIからソケットを扱う方がいいかも
0165デフォルトの名無しさん
NGNG下線と取り消し線設定のチェックボックス表示は有効で、
色選択リストの表示を無しにするにはどうしたらよい?
(CF_EFFECTSは両方いっしょに制御しちゃう‥‥)
簡単な方法はあるだろうか?
0166デフォルトの名無しさん
NGNG簡単な方法・CFontDialogのところをダブルクリックしてF1を押しなさい。
0167デフォルトの名無しさん
NGNG0168デフォルトの名無しさん
NGNGCArray<CHoge, CHoge&> m_arrHoge;
が定義されているとして、
あるメンバ関数のなかで、
m_arrHoge.add(CHoge());
というようなことをした場合、
CHogeの実体はどこにあるの?
0169デフォルトの名無しさん
NGNG0170デフォルトの名無しさん
NGNG付けることは出来るのでしょうか?
0171デフォルトの名無しさん
NGNGできなかったら凄く面白い。
0172デフォルトの名無しさん
NGNGこんなのくらいしかないな。
171は、どうやるのか教えれ
0173デフォルトの名無しさん
NGNGCTreeCtrlはSetCheckでチェックボックスが表示されないバグがある。
さらに、イメージリストを設定するとなぜか直るというバグ付き。
だからSetImageListでイメージリストを設定すればちゃんと動くのだが…
結構有名なバグだと思ったのに(´Д`;
#って、そこにかいてあるじゃん…
0174デフォルトの名無しさん
NGNGhttp://www.vector.co.jp/soft/dl/win95/util/se020949.html
のnkf32.dllを使用しようとしているのですが、実行する時に
「序数 3 がダイナミック ライブラリ NKF32.dll から見つかりませんでした。 」
と出てうまくいきません。下のやり方は間違っているのでしょうか?
//-- test. cpp --
extern "C" {
#include <nkf32.h>
};
int main(){
char buf[256];
GetNkfVersion(buf);
cout << buf << endl;
return 0;
}
0175デフォルトの名無しさん
NGNGDLLの場所がおかしいだけだろ。
俺はできたぞ。
(Win2000SP2&VC++6SP5)
0176デフォルトの名無しさん
NGNG0177デフォルトの名無しさん
NGNG大ボケしてました。(´Д`;)
ありがとうございました。
>>176
スレタイの "DLL" を見て脊髄反射的に…
0178デフォルトの名無しさん
NGNGOnDestroy()にてスレッドと、その内部で使っているオブジェクト(m_obj)を破棄します。
現在は以下のようにsleepで無理矢理同期させていますが、
正しくはスレッドが完全に停止し破棄された時のイベントか何かを待つのだと思います。
WaitForSingleObjectを入れていますが全く効いてません。
現在は停止イベント後もm_objのメソッドをスレッドが呼び出してしまいアクセスバイオレーションになります。
どうしたらいいですか?
XXX::OnDestroy()
{
〜途中略〜
if(m_EventThreadStop)
{
SetEvent(m_EventThreadStop);
m_EventThreadStop = NULL;
}
if(m_pThread)
{
WaitForSingleObject(m_pThread, INFINITE);
m_pThread = NULL;
}
::Sleep(500);
if(m_obj != NULL)
{
delete m_obj;
m_obj = NULL;
}
}
0179デフォルトの名無しさん
NGNGWaitForSingleObject(m_pThread->m_hThread, INFINITE); ?
0180デフォルトの名無しさん
NGNGSP5のファイルをインストーラ使わずに直接cabを解凍して
適当にぶち込んだらMFCのスタティックリンク版が使えるように
なったり、最適化が出来るようになっちゃいました、で再びやろうと
思ったのですが、どうやってやったのか忘れちゃって。
誰か分かりますか?
0181デフォルトの名無しさん
NGNGダイアログボックスの各コントロール扱い方なんですけども、
MFCのクラスウィザードでメンバ変数を作ってやるのと、それを使わないで
やるのと、どちらが一般的なのでしょうか?
私はとりあえず、クラスウィザードでメンバ変数を作成せずに、
下記のような感じでやりました。
class CDialog{省略
public:
struct Data{
CString strA;
BOOL bB;
};
private:
Data m_data;
};
0182デフォルトの名無しさん
NGNGありがとう。ドンぴしゃ正解でした。
0183デフォルトの名無しさん
NGNGMFCを使うんなら、DDX,DDV使える既成のもの使ったほうがいいんじゃね?
0184デフォルトの名無しさん
NGNG>ダイアログボックスの各コントロール扱い方なんですけども、
>MFCのクラスウィザードでメンバ変数を作ってやるのと、それを使わないで
MFCのダイアログはコントロールに CString や int, BOOL などの変数を
結びつけることができるのが便利、コントロールのクラスを結びつけることもできる。
ダイアログのリソース作って、クラスウィザードでそのリソースのCDialog派生クラス作って
メンバ変数ページでコントロール選択して変数の追加でダイアログ上のコントロールに
結び付けられた変数を追加できる。カテゴリでコントロールを選択するとコントロールのクラスを
結び付けられる。エディットコントロールに文字列・数値などを入力するだけならカテゴリで
値を選択するのが楽。
自力でコードを書くこともできるけど、ウィザードを使うと楽。
変数とコントロールを結び付けてるのはDDX/DDVサポートのDoDataExchange()関数
エディット・ラジオボタン・チェックボックス・ボタンコントロールしか使わなかったら楽にできる
ボタンはメッセージBN_CLICKEDとかの処理。
0186デフォルトの名無しさん
NGNGNM_SETFOCUS、NM_KILLFOCUS、EN_SETFOCUS、EN_KILLFOCUSが
いずれも受け取れないのはどうして?
0187デフォルトの名無しさん
NGNG0188デフォルトの名無しさん
NGNGコモンコントロールでも取れないメッセージがあるみたいだからOnNotifyでぶんどりなされ。
0189デフォルトの名無しさん
NGNG阿呆な質問かもしれませんが、VC++では例えばリストボックス
を改造してエディットボックスに変更したり出来るのですか?
0190デフォルトの名無しさん
NGNG継承しなされ。
0191デフォルトの名無しさん
NGNG改造せずにエジットボックス使え。
0192デフォルトの名無しさん
NGNGCRect myRect;
CPoint myPoint;
の時、
(1) pDC->RoundRect(myRect, myPoint)
(2) pDC->RoundRect(&myRect, myPoint)
(2)の方が実行スピードは速いですか?
0193デフォルトの名無しさん
NGNGsapleDoc.cpp sampleView.cpp Stdafx.cpp とこのようなもともとあるファイルで、
どのファイルをいじくれば編集できるのですか?(画像処理で色変換がしたいです)
初心すぎてすみません、教えてください
0194デフォルトの名無しさん
NGNGPerformanceCounter でも使って計測してみなはれ
ただ、最適化するのが目的ならもっと他に最適化する部分があると思うがな
0195192
NGNG何分まだ覚えたてなので、
どうせなら、少しでも効率の良い方を覚えようと思いまして・・・
なんかでポインタを渡した方が速いっていうのを、
見た気がしたもので・・・
最適化なんてまだまだまだ先です。
レスありがと!
0196デフォルトの名無しさん
NGNG#define WINVER 0x0500も加えたのですが、
CWnd::FlashWindowEx
が見つからないのです。どうすればいいですか?
0197デフォルトの名無しさん
NGNGFlashWindowExてWin32APIやん。
0198デフォルトの名無しさん
NGNGVisualC++(Ver6.0)にてCソース以外のファイルでも(拡張子がplとかjsとか)
キーワードに応じてテキストにカラーを付ける方法はないでしょうか?
perl固有のキーワードに個別に対応しないまでも
Cのキーワードに割り振ったテキストカラーだけでも表示してくれればいいんですが・・
0199デフォルトの名無しさん
NGNGIntelliSenseやClassViewで表示されたり表示されなかったりします。
.libではなくソースを直接プロジェクトに登録すると表示されます。
どうすれば確実に表示されるようになりますか?
環境はVC6.0Pro SP5です。
0200デフォルトの名無しさん
NGNG少しずつ使用メモリが増えていくのですが、こういうものなんでしょうか?
一度切り替えて表示したウィンドウを再度表示したりした場合は増えなかったりします。
0201196
NGNGhttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vclib/html/vclrfcwndflashwindowex.asp
今はWINAPIを直で呼び出して使っていますが、
せっかくあるものを使えないのが気持ち悪いのです。
MFCのソースのバージョンが古いのかなと思い、
探してみたけれど無料ダウンでは見つからず。
CWnd::FlashWindowが宣言されている
AFXWIN.H(154,220 バイト)の日付が98/06/15。。。
.NETを買うしかないのかな?
.NETを持っている方のAFXWIN.Hの日付を教えてください<(_ _)>
0202デフォルトの名無しさん
NGNGない
>>199
確実に表示はできない。
IntelliSenseが表示されない場合は編集中のクラスのヘッダファイルを保存しなおす。
ClassViewも同様に、表示されないクラスのヘッダファイルを保存しなおせば現われたりする。
MFC関係ないんなら次からはこっちで聞いとくれ。
ttp://pc3.2ch.net/test/read.cgi/tech/1038160750/l50
>>200
どこかでメモリリーク起こしてないか?
0203デフォルトの名無しさん
NGNG子ウィンドウを作ったらその分使用メモリは増えるが、切り替えるだけなら変わらないはず。
0204デフォルトの名無しさん
NGNG言語を追加する方法は見つけられなかったが、
HKEY_CURRENT_USER\Software\Microsoft\Devstudio\6.0\Text Editor\Tabs/Language Settings\C/C++
以下のFileExtensionsに拡張子を追加するとC/C++のソースと見なされる。
あとはusertype.datに書いておけばいい。
>>199
ヘッダをプロジェクトに入れれば出ると思う。
Intellisenseだけ出したいのなら、そのクラス・関数の情報が入ってる*.ncbを持ってきて、
自分のプロジェクトのncbとすげ替えると出たりする。
0205デフォルトの名無しさん
NGNGメモリリークは起こってない・・・・と自信をもって言えないのが情けないのですが、
普通はやっぱりウィンドウを切り替えた位ではメモリ使用量は増えないですか・・・。
>>203
例えばあるボタンを押した時にダイアログを表示するような処理で、ダイアログを表示して
ダイアログ上でOKボタンなどを押して消した場合、メモリ使用量はダイアログ表示前と
同じでなければ、何かしら問題があると考えた方がいいですか?
0206IP記録実験
NGNGhttp://qb.2ch.net/test/read.cgi/accuse/1042013605/
1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。
27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?
38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。
73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0207デフォルトの名無しさん
NGNGビュークラスの中で取得するのは簡単なのですが、他の場所、例えば自作クラスの中で取得するには
どうしたらいいんでしょうか。自作クラスにビューに描画させる機能を付けたのですが、
そのメンバ関数を呼ぶ度にいちいち引数としてビューで取得したデバイスコンテキストを渡しています。
これを自作クラスの中で取得させたほうがよりスマートだと思うのですが方法がわかりません。
どなたかよろしくお願いします。
0208デフォルトの名無しさん
NGNG0209デフォルトの名無しさん
NGNGGetDC
CreateDC
ClientDC
0210age2ch.pl 0.03.28
NGNG0211デフォルトの名無しさん
NGNG0212デフォルトの名無しさん
NGNGキタ━━━━(゚∀゚)━━━━━!!!
0213デフォルトの名無しさん
NGNGLRESULT CTestDlg::WindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message)
{
case WM_SYSCOMMAND:
switch( wParam & 0xFFF0 )
{
case SC_MINIMIZE://最小化されたら
//システムトレイにアイコンを追加する処理
〜
ShowWindow(SW_HIDE);//タスクバー非表示?
break;
case SC_RESTORE://システムトレイから復帰したら
//システムトレイからアイコンを削除する処理
〜
ShowWindow(SW_SHOW);//タスクバー表示?
break;
}
break;
}
return CDialog::WindowProc(message, wParam, lParam);
}
こんな感じに書いて見たのですが、ほんの一瞬タスクバーが消えるものの、
再度タスクバーが表示されてしまいます。
内部のどこかでShowWindow(SW_SHOW)みたいな事をやっちょるんでしょうか?
0214デフォルトの名無しさん
NGNG0215デフォルトの名無しさん
NGNGSDK気分が抜けておらんからじゃ。
CWnd::WindowProc()はメッセージが通過するだけじゃ。
これでは、DefWindowProcが呼ばれてしまうんじゃ。
だから表示されるんじゃ。
MFC流儀に従って、OnSysCommand()をオーバー来度するんじゃ。
基底クラスのOnSysCommand()を呼ぶんじゃないんじゃ。
0216デフォルトの名無しさん
NGNGDefWindowProc -> CallWindowProc
0217デフォルトの名無しさん
NGNG0218デフォルトの名無しさん
NGNGwinnyチックな掲示板ができるだろうね。
もうできてるのか?
0219デフォルトの名無しさん
NGNGアレ・・ちょっと・・・か?
「ちょっと」・・・じゃないような・・・。
0220デフォルトの名無しさん
NGNGなるほど!!言われたとおりに試して見たらうまく出来ました!!
どうも有難うございました!
0221デフォルトの名無しさん
NGNG【2ch】管理人のひろゆき氏がqbサーバで全レスIP記録の実験を開始
http://news2.2ch.net/test/read.cgi/newsplus/1042017485/
0222デフォルトの名無しさん
NGNGそれってクラスツリーたどっていくとCDHtmlDialogとかも載っているので
MFC7のリファレンスじゃ?
MFCは無料でバージョンアップできません。
つまりVC++6を使っているならMFCは6のままなので、SPやSDKをバージョンアップしても
MFC7の関数は使えない。
0223207
NGNGその3つの関数について調べてみましたがよくわかりません。
私の質問がちょっとわかりにくかったんだと思いますが、
私が知りたいのはビューのデバイスコンテキストの取得方法で、
新しく作りたいというわけではありません。
CClientDC dc(this);
と、ビュークラスの中でよくやったりしていますが、それを
自作クラスの中でやるにはどうすればよいか?という質問です。
このthisのところを他の適当なものにすればよさそうなのですが
それがわからないのです。もしくは他に適当な方法があるのでしょうか。
0224デフォルトの名無しさん
NGNG0225デフォルトの名無しさん
NGNG0226デフォルトの名無しさん
NGNGTHX。納得しました。
0227デフォルトの名無しさん
NGNGコンストラクタとは何か
thisとは何か
GetDC()
これらを知らないと見た
0228デフォルトの名無しさん
NGNG/:::::::ヽ____/::::::::ヽ、
丿 ::.__ .::::::::::::: __ ::::ヽ_
/ /。 ヽ_ヽv /: /。ヽ ::::::ヽ
-┼- 丿~~~| / / ̄ ̄√___丶  ̄ ̄\ ::::| ■ ■
-┼- /~~~~/ ━━━ | .:::::::::: / / tーーー|ヽ ..::::: ::|━━━━━━ ▼ ▼
.| 丿 | .:::::. ..: | |ヽ ::| ● ●
| ::: | |⊂ニヽ| | :::::| \
/ /| : | | |:::T::::| ! .::| \ \\
/ / \: ト--^^^^^┤ 丿 \\\ \\\
お、大阪・・・・
0229デフォルトの名無しさん
NGNG2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 138720人 発行日:2003/1/9
年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。
そんなわけで、年末に予告したIP記録ですが実験を開始しています。
「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0230横レス スマソ
NGNGってAPIの?
0231デフォルトの名無しさん
NGNG0232デフォルトの名無しさん
NGNG当然、アルゴリズム体操。
0233207
NGNGいろいろ試行錯誤した結果、
最初にビューの m_hWnd をクラスに渡しておいて、
必要なときに
CDC *pDC=CDC::FromHandle(GetDC(m_hWnd));
とやって、どうにか目的のデバイスコンテキストを得ることができました。
0234デフォルトの名無しさん
NGNGそんな回りくどいことしなくても
CDC *pDC = pWnd->GetDC();
でいいんじゃない?
0235207
NGNGそのpWndってどうやって得ればいいんでしょう?
MFCでプログラムしていますが、そんなの定義されてないです。
0236デフォルトの名無しさん
NGNGSetItemData()で設定したアイテムデータはソートしやがらねぇ。
ソート比較関数の中で入れ替えるのもなぁ・・・
なんかスマートな方法無いものか。
0237236
NGNG0238名無し@沢村
NGNGヌヒよ、m_hWndを渡すのではなくViewへのポインタを渡しなさい。
0239デフォルトの名無しさん
NGNGAfxGetMainWnd()
CFrameWnd::GetActiveFrame()
CFrameWnd::GetActiveView()
その他いろいろウィンドウを取得するメソッド・関数は用意されているが。
>>238
たのむからこのスレへ来ないでくれ
0240207
NGNG私も最初そうしようと思ったのですが、
ビューのヘッダをインクルードしようとすると
変なところでコンパイルエラーが出ます。ひょっとして私だけですか?
0241名無し@沢村
NGNGヌヒよ、そうやって適当にウィンドウを取得しても正常に描画できるわけないだろ。
0242名無し@沢村
NGNGヌヒよ、別にViewのヘッダファイルをインクルードする必要は無いのではないか?
CWnd* を渡せばよいのだから。
0243デフォルトの名無しさん
NGNGこの定義をよくみて考えてみれ
CDC* CWnd::GetDC()
{
return CDC::FromHandle(::GetDC(m_hWnd));
}
わかんなくても別に>233の方法も
間違ってるわけじゃないからそれでいいさ
0244207
NGNGそんな関数があったのですか。なるほどその方法でもいけそうですね。
>>242
CWnd*ですか・・どうも私が勘違いしていたようですね・・・。
どうやらCWndあたりで私の理解が足りなかったようですね。
勉強しなおそうと思います。
0245デフォルトの名無しさん
NGNG(,, ゚∀゚)<遅ればせながら記念パピコ
0246デフォルトの名無しさん
NGNG「コテハン戦隊ラウンジャー」に鑑定依頼してきますた
0247デフォルトの名無しさん
NGNG0248デフォルトの名無しさん
NGNG0249デフォルトの名無しさん
NGNG0250デフォルトの名無しさん
NGNG単なる子供?
0251デフォルトの名無しさん
NGNG0252デフォルトの名無しさん
NGNG0253デフォルトの名無しさん
NGNGあるネット関連会社の社長は、
「いずれにしても2ちゃんねるは資金が底をつけば終わり。
あまり知られていないことだが、2ちゃんねる内部関係者によると今、
大手通信会社系が調査費名目で資金提供している。
だが、それが止まれば続けてはいけないだろう」
と証言する。
2ちゃんねるが判決によって力を失った場合、
資金提供の打ち切りも予想される。
http://ascii24.com/news/reading/causebooks/2002/07/01/636911-000.html
0254デフォルトの名無しさん
NGNGニュース速報@Megabbs:IPは?(書いてない)
http://www.megabbs.com/news/index.html
ニュース速報@MILKCAFE:IPは基本的には取ってない(http://www.milkcafe.net/gu.html参照)
http://www.milkcafe.net/news/
ニュース雑談@sub-all:IPは基本的には取ってない(http://www.bbs2.net/fuck.html参照)
http://www.bbs2.net/news23/
経済@いちごびびえす:IPは取ってない(http://www.ichigobbs.com/info/info.html参照)
http://matari.ichigobbs.com/economy/
ニュース速報@匿名掲示板(仮):IPは取ってない(http://kari.to/about/参照)
http://kari.to/bbs/g4/
0255デフォルトの名無しさん
NGNGなんですかこれ(謎)
0256デフォルトの名無しさん
NGNGいつもお仕事はなにしていらっしゃるのか?
0257デフォルトの名無しさん
NGNG後は、羽田タートルのスレッドの中での粘着さん。
0258デフォルトの名無しさん
NGNG一般人はどうやってみるんだ?
掲示板といえるのか。
0259デフォルトの名無しさん
NGNG匿名重視の板では厨房どころか普通の客まで帰っちゃうという罠。
実況なんかだと逆に非常に便利(荒らしの特定)だろうけど。
0260デフォルトの名無しさん
NGNGでも、良かったらさんもさんもマァヴさんも
おいらの立てたスレに遊びに来てね。
どうせIP記録されるんならふしあなさんしようぜ
http://live.2ch.net/test/read.cgi/festival/1042199282/l50
0261デフォルトの名無しさん
NGNGダイアログでクラスウィザードを使いメンバ変数を作成すると
多数のメンバ変数ができてしまったときに扱いにくくないですか?
私としては構造体にまとめたいのですが、
そうすると自力でコード書く部分がかなり多くなってしまいます。
何か良い方法はないでしょうか?
0262デフォルトの名無しさん
NGNGあんましおおいなら、ダイアログを分割したりしたほうが
よさそうだけど。
0263デフォルトの名無しさん
NGNGあれほど、あれほどお願いしたのに、、、
0264デフォルトの名無しさん
NGNG0265デフォルトの名無しさん
NGNG2ちゃんねるのお勧めな話題と
ネットでの面白い出来事を配送したいと思ってます。。。
===============================読者数: 139038人 発行日:2003/1/10
なにやら、連日メルマガだしてるひろゆきです。
そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。
重くなって落ちたりしてもご愛嬌ってことで。。。
んじゃ!
────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0266デフォルトの名無しさん
NGNG自分達の上に降りかかろうとしている事を。
その重い沈黙を、広場の一角から上がった声が破った。
「言論規制、逝って良し!!」
だがその声は、それに続く声も無いままに切れてしまった。しかし、それとは別の声が、
再び沈黙を破ってひびいた。
「2ちゃんねる、逝って良し!!」
この叫びは、法廷前広場に掲げられたモナーの書かれた横断幕に、そして折りしも誰かの手によって
掲げられたギコ猫としぃの手旗に向かって、まるで海の波でもあるかのように、打ち寄せては去り、
再び打ち寄せては去るのを止めなかった。
残務処理に向かう管理人達は心配した。自分達の決定に反してまでも、攻撃に打って出るつもりかと
思ったのである。彼らの呼びかけで、多くのブラウザが一斉に開かれた。
だが、これは無用な心配に過ぎなかった。なぜならば、田代やネオ麦事件の時と同じく、
武器を持たない2ちゃんねらーたちの、彼らなりの礼砲だったからである。
彼らにも匿名体制の終焉は2ちゃんねるの滅亡と同じ事がわかっていたのである。
法廷前から始まった書き込みは、過去の祭りと同じように掲示板の書き込みを埋めていった。
「2ちゃんねる、逝って良し!」
「2ちゃんねらー、逝って良し!!」
0267デフォルトの名無しさん
NGNG≪1864年、イギリス人のF・ベアトにより撮影された江戸のパノラマ写真≫
愛宕山という20メートル位の小さい丘から撮影されました。
映像に矢印を2秒くらい置いておけば、拡大できるので(右下に出るマークをクリック)
是非 スクロール して楽しんでください。
http://aquarius17.cool.ne.jp/dc2wp/up/box/sub.cgi/scene0130.jpg
ちなみに李朝のソウルはこちら。まことにありがたい町並みです。
http://www2.nhcc.go.kr/cgi-bin/xcall?ssid=105925&dbid=/photo/web/photo&ty=1&fi=SJ0052&cap=SJ0052
0268デフォルトの名無しさん
NGNG0269デフォルトの名無しさん
NGNG生きろ!快速ストーカー
0270デフォルトの名無しさん
NGNG俺は慌ててパソコンを立ち上げ、そして気付く。
「あぁ、2chは閉鎖したんだっけ……」
テレビからは現場の慌しい状況が伝わってくる。
もし2chがあったら、どういうスレが立っているのだろう。
重複スレが沢山できて、それで荒らしとかやってきて……
テレビでは相変わらず、レポーターが必死で現場の状況を伝えている。
可愛いレポーターだ。俺は、頭の中で「萌え〜」というレスを
つけている自分を想像した。
後ろの群集がテレビに向かって挑発的なポーズを取っている。
「なんだ、あのドキュソ」「厨房氏ね」……
俺はたまらなくなり、無いとは分かっていながら再び2chにアクセスした。
しかし、画面には一言「閉鎖したのです。。。」とだけしか表示されない。
何度リロードしても変わらない。あの日以来、2chは止まったのだ。
どうやら犯人が逮捕されたようだ。相変わらず可愛いレポーターが
その状況を伝えている。
「さよなら、にちゃんねる」
俺はお気に入りから2chを削除し、そして騒がしいニュースを冷めた目で
見るのであった。
0271デフォルトの名無しさん
NGNG発信元がわかるんで、告発された側が「よーし金でねじ伏せちゃうぞー」
とか言って裁判でも起こしまくって。
そんな状況はガクブルだから、面白そうな(真実である事が前提の)投稿は、減る?のかな?
考え過ぎ?って言うか見当違い?どうだ?どうなんだ?
0272デフォルトの名無しさん
NGNG確かに100も200もあると大変だよなあ。
0273デフォルトの名無しさん
NGNG0274デフォルトの名無しさん
NGNGこれも時の流れかね
もうだめぽ
0275デフォルトの名無しさん
NGNGDDX,DDVを使う変数のみウイザードで作成
それ以外は構造体なり、クラスなりにする
でいいんでは?
0276デフォルトの名無しさん
NGNGプログラムを作っているのですが、一回読み込んだファイルを再度読み込む
ことができません。ソースは
CString filename = "C:\\a.txt" //ファイルの位置
CStdioFile fin1(filename, CFile::modeRead);//概念見出し辞書をオープン
while(fin1.ReadString(buf) != NULL){
:
:
}
CStdioFile fin2(filename, CFile::modeRead);//概念見出し辞書をオープン
while(fin2.ReadString(buf) != NULL){
:
:
}
という感じです。
コンパイルは通るのですが、実際に動かしてみる(内容としては文字列検索)と
どうも2回目のファイル読み込みが機能していないみたいで・・・。
何かよい方法はありませんか?
0277デフォルトの名無しさん
NGNG例外をキャッチしてみるとか。
0278デフォルトの名無しさん
NGNGCloseしてないからじゃない?
0279デフォルトの名無しさん
NGNGCloseは
fin1.Close();
という形でいいんですかね?
それを加えたら途中で止まってしまいました。
何度もすみません。
0280デフォルトの名無しさん
NGNGそれくせー。
0281デフォルトの名無しさん
NGNGそんな感じ。
ところで、どこでcloseしたの?
whileの中じゃないよね?
0282デフォルトの名無しさん
NGNGもう最後の方はさっぱり意味わかんなかったけど・・・
ってゆうかほろゆきが止めたのか?
0283デフォルトの名無しさん
NGNG0284デフォルトの名無しさん
NGNG0285デフォルトの名無しさん
NGNGCStdioFile::ReadString の返り値ってBOOL型なんだからNULLと比較してはマズいような。
動作に影響はないかもしれないけど。
この場合ではwhileが終わったらfin1.Close();やfin2.Close();すべき。
(whileの後に処理があるなら別。)
0286デフォルトの名無しさん
NGNGcs = ct.GetCurrentTime("%H : %M : %S");
とあるときはCTimeのメンバー関数GetCurrentTimeはCTimeのオブジェクトを
返す関数と考えて良いでしょうか?
0287名無し@沢村
NGNGヌヒよ、それくらい自分ですぐ調べられるだろ。
0288デフォルトの名無しさん
NGNGその前にCTimeにそんな関数ないだろ。
0289デフォルトの名無しさん
NGNGどこかのアホサンプルをコピペでもしたのか?
GetCurrentTimeの返り値の型を見ろ。
0290デフォルトの名無しさん
NGNGデータ型のboolとBOOLや、
例外処理のtryとTRYは
処理速度や機能面で何か違いがあるのでしょうか?
それとも単に大文字小文字の違いだけ?
0291デフォルトの名無しさん
NGNG#define TRY { AFX_EXCEPTION_LINK _afxExceptionLink; try {
typedef int BOOL;
0292名無し@沢村
NGNGヌヒよ、嘘をついてはいけません。
0293290
NGNGようするにTRYは単なるtryのマクロ定義で、
BOOL型はint型の変名に過ぎないわけですか。
VC++でboolを使うとなにか都合が悪いことがあるのでしょうか?
0294デフォルトの名無しさん
NGNGGetCurrentTime()
と
GetCurrentTime("%H : %M : %S")
が同じだとでも思ってるのか
0295デフォルトの名無しさん
NGNG//まずい!
if(b == TRUE)
//まずい!
hoge(int n);
hoge(BOOL b);
0296デフォルトの名無しさん
NGNGBOOLはVC5以前の名残で、互換性のため。
0297デフォルトの名無しさん
NGNG0298デフォルトの名無しさん
NGNGメールや電話だと「届いていない」「読めなかった」「回線の調子が悪くて聞こえなかった」で抜けられるからね。
0299デフォルトの名無しさん
NGNG0300デフォルトの名無しさん
NGNG0301デフォルトの名無しさん
NGNGhttp://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_mfc_CTime.3a3a.GetCurrentTime.asp
0302デフォルトの名無しさん
NGNGモノによってはWindowsのバージョンで違う宣言になってたり。。。
0303デフォルトの名無しさん
NGNGBOOLだとTRUEが1なんだよな…
boolは-1なのに。
0304デフォルトの名無しさん
NGNG0305デフォルトの名無しさん
NGNGなんとかならないでしょうか?
DCにペイント命令だしても全部無視されてしまいます・・・。
0306デフォルトの名無しさん
NGNGダイアログベースで作成しているのですが、ボタン操作でexeファイルを実行させることはできますか?
その方法があれば、どなたかご教示ください。
環境はVC6.0です。
0307デフォルトの名無しさん
NGNG検索したらシャドウバッファに格納されてるとあったのですが、シャドウバッファをどうすればいいのかわからず・・
アドバイスお願いします。
0308デフォルトの名無しさん
NGNG0309デフォルトの名無しさん
NGNG変わった人だね
0310デフォルトの名無しさん
NGNG0311山崎渉
NGNG0312デフォルトの名無しさん
NGNGShellExecuteとか。
0313デフォルトの名無しさん
NGNG0315デフォルトの名無しさん
NGNGUpdateData
0316デフォルトの名無しさん
NGNGGetEditCtrl()でEditコントロールを取得して操作。
>>308
同じく。
どうして-1じゃないんだろう?
0317デフォルトの名無しさん
NGNG0318デフォルトの名無しさん
NGNG整数型の変数の値を文字型にしてStaticコントロールに表示させたいのですが
どのようにすれば良いのでしょうか?
どうやら普通のC++とやり方が違うようで、、、。
0319318
NGNG○StaticText
すまそ
0320デフォルトの名無しさん
NGNGi = 10;
CString str;
str.Format( "%d", i );
0321320
NGNG脊髄反射でカキコしてしまったが
ひょっとして変換方法じゃなくて表示方法がわからないのかな?
だとしたら↓みたいな感じか。
int i = 10;
CString str;
str.Format( "i = %d", i );
m_wndStatic.SetWindowText( str );
0323デフォルトの名無しさん
NGNGツールボックスを2つ使いたいのですが、
2つ表示させるところまでは上手く行きました。
(CMainFrameクラスにCToolBarクラスのオブジェクトを追加した)
メニューにツールバーの表示/非表示を選択できますが、
AppWizardが生成したコードのままだと、独自に追加した2つ目の
ツールバーまで制御が効きません・・・
ツールバーの表示/非表示をプログラムでやるには、
どの様にしたらよろしいのでしょうか?
0324323
NGNG以前の状態(ツールバーの位置)を保ちたいです。
0325デフォルトの名無しさん
NGNG0326デフォルトの名無しさん
NGNG0329デフォルトの名無しさん
NGNG0330デフォルトの名無しさん
NGNG0331デフォルトの名無しさん
NGNG0332デフォルトの名無しさん
NGNGCString str;
ifstream fi("hoge.txt");
fi >> str;
てやるとエラーが出るのでいつも
char tmp[100];
fi >> tmp;
str = tmp;
とかやってるんですが
0333デフォルトの名無しさん
NGNGstr.ReleaseBuffer();
0334デフォルトの名無しさん
NGNGCString(MFC)使うなら>>333とかCArchiveとか
0335デフォルトの名無しさん
NGNGやっぱサイズ指定しないとだめですか?
STLのstringみたいにユーザはサイズを決めないで
読み込める方法があるとありがたいのですが
0336デフォルトの名無しさん
NGNGCArchiveって単なるテキストファイルを読み込むときとかにも
使うものなんですか?
0337デフォルトの名無しさん
NGNG使うもんだ。そして君のやりたい
CString str;
ar >> str;
とかやるもんだ。
0338デフォルトの名無しさん
NGNG0340デフォルトの名無しさん
NGNGそのやりかたはCStringをCArchiveに保存した時のみ有効。
ar << str;// strはCString
この時、ファイル上はテキストで保存されているわけではなく、バイナリで文字列長+文字列で構成される。
ar >> str;//復元できる
>>338
CStdioFileは1行読みのためのクラス。
テキスト全部読むとかだったら向いてないね。
0341デフォルトの名無しさん
NGNGar >> str;
だと指摘どおりだな。
ただCArchive::ReadStringってのもあるYO
テキスト全部読むなら1行読みをループさせるしか思いつかないねぇ・・
なんかいい方法ある??
0342デフォルトの名無しさん
NGNGアホか。
0343山崎渉
NGNG0344デフォルトの名無しさん
NGNGコンボボックスを表示させるようにしたいのですが、どなたかキーワード
や情報のポインタだけでも教えてもらえないでしょうか。
おながいします。。。
0345デフォルトの名無しさん
NGNGCodeGuruとかにサンプルないかな。
リストビューではよくある話なのでリストビューのサンプルを参考にしても良いかも。
0346デフォルトの名無しさん
NGNGメンバ変数としてCComboBox持ってればいいんじゃないか?
CTreeCtrl::GetItemRect()で表示する位置はわかるし。
0347デフォルトの名無しさん
NGNG{
CDC* pDC = GetDC();
int saveDC = pDC->SaveDC();
pDC->DrawIcon(lpDrawItemStruct->rcItem.left,
lpDrawItemStruct->rcItem.top,
theApp.LoadIcon(IDI_MY_ICON));
pDC->RestoreDC(saveDC);
}
と書いてもアイコンが表示されません。
その代わり
CImageList m_imageListにアイコン登録して
m_imageList.DrawIndirect(pDC,
0, CPoint(rect.left, rect.top),
CSize(ICON_SIZE_X, ICON_SIZE_Y),
CPoint(0, 0));
とやると表示されるんですが、、、
でも、アイコンの透明色が背景が透けてくれません。
なにかおかしんでしょうか?
0348デフォルトの名無しさん
NGNGCImageList::SetBkColor
0349デフォルトの名無しさん
NGNG0350347
NGNG駄目でした。そのかわりCImageList::Create()の引数にILC_MASKを渡したら透けました。
でもやっぱりDrawIcon()は使えない・・・
0351デフォルトの名無しさん
NGNGそもそもLoadIconは成功しているのかと24時間(略
0352デフォルトの名無しさん
NGNGDrawIndirectの説明を穴のあくほど読め。
デフォルトではfStyle = ILD_NORMALだ。
0353デフォルトの名無しさん
NGNG24時間かよ(藁
0354デフォルトの名無しさん
NGNGInsertMenuやAppendMenuで動的に作成したメニューがクリックされた時に
対応するメソッド(ハンドラ?)を定義するのにはどうしたらいいんでしょうか。
InsertMenuに渡すアイテムIDも動的に指定しています。(マクロでない)
事情により、クラスウィザードを用いないで実装しているコードをいじらなければ
なりません。
厨房ですいませんがよろしくおねがいします。。。
0355デフォルトの名無しさん
NGNGIDを手で捏造したくないんなら
メニューエディタで隠しメニュー作ってそこに登録するといいyo
0356デフォルトの名無しさん
NGNGありがとうございます。
テクニカルノートをまず読んでみます。
0357354
NGNGあらかじめメニューIDをいくつか予約しておいて、
ON_COMMAND_RANGEマクロを使ってそれらのIDに対応するメソッドを
定義し、その中でswitchすることでやりたいことが実現できそうです。
ありがとうございました!
0358デフォルトの名無しさん
NGNGStatic内の色を変えるにはどうするのでしょうか。
1週間くらい調べてますが解らなくて・・・オロロ・・・・。
0359デフォルトの名無しさん
NGNGスタティックコントロールにユニークなIDを付けて、後は他のコントロールの色を変えるのと同じ。
0360358
NGNGスマソ。
ダイアログボックスベースで作っているので、
アプリを実行した時点でStaticの色を白にしたいんです。
どこにソースを書けばよいのかも解らず・・・・・オロロ・・・。
0361デフォルトの名無しさん
NGNG>アプリを実行した時点でStaticの色を白にしたいんです。
>>359
コントロールの色変更は検索すればすぐ出てくると思うけど。
0362デフォルトの名無しさん
NGNG0363デフォルトの名無しさん
NGNG単純にやるならダイアログクラスのWM_CTLCOLORでウィンドウのポインタ比較して
変えたい色のブラシハンドルを返す。
0364デフォルトの名無しさん
NGNGそれまでずっとVB派だった漏れは、かなり苦労した憶えが(´д⊂)
まぁ、色変更とか、一般的な処理に関しては
検索すればすぐに見つかるし、あっさり解決したけど。
0365デフォルトの名無しさん
NGNG特にボタンがなー。
オーナードロー?あーん?なんだそりゃって感じだったよ。
0366デフォルトの名無しさん
NGNGプッシュボタンの文字の色ぐらい簡単に変えられるようにして欲しかった。
0367デフォルトの名無しさん
NGNG0368デフォルトの名無しさん
NGNG0369デフォルトの名無しさん
NGNG処理はどうすれば良いのでしょう?
例えばIEを使ってる最中にダブルクリックしたらEND押したことに
なるような感じです。
お願いします。
0370デフォルトの名無しさん
NGNG通常は一番右のビューのサイズが変更されますが、
真ん中のビューのサイズが変わるようにするにはどうすれば良いですか?
┌┬┬┐→┌┬─┬┐
└┴┴┘ └┴─┴┘
こんな感じに。
0371デフォルトの名無しさん
NGNGWM_SIZE捕まえて自力でサイズ調整。
0372デフォルトの名無しさん
NGNGダブルクリックのコマンコを受け取って処理すれば良いだけでは?
0373デフォルトの名無しさん
NGNGENDボタンを押したことにする、という関数はどんなのなのでしょうか?
検索してもそれらしいのを発見できなかったので質問しました。
初心者用のVCの本を読んだ程度の知識しかないです。。
何か関数名か何か、検索のヒントとなる単語でも良いのでお願いします。
0374デフォルトの名無しさん
NGNG元がどういう構成かわからないんでなんとも言えないけど
ダイアログならOnOKなりEndDialogなり呼べば良いし、SDIやMDIなら
メインのウィンドウに対してSendMessage(WM_CLOSE)とかで行けないかな?
0375デフォルトの名無しさん
NGNGENDボタンを押した時に呼ばれる関数を呼べば(ry
0376デフォルトの名無しさん
NGNG0377370
NGNGCMainFrame::OnSize() でやろうとしたのですが、
CSplitterWnd は CMainFrame に直接埋め込んでいて、
CMainFrame が作られてすぐに OnSize() が呼び出されたときには
CSplitterWnd はまだ Create されていないために
CSplitterWnd::Get(Set)ColumnInfo() を呼び出した時点で落ちるという状態です。
(分かりにくい説明ですみません)
方法としては CSplitterWnd をポインタとして埋め込んで OnCreate() で作成、
OnSize() の中で if(m_pSplitter != NULL) として回避するくらいしか思いつきませんが、
直接埋め込んだ状態で何とかする方法はないでしょうか?
0378デフォルトの名無しさん
NGNG0379デフォルトの名無しさん
NGNGそれはフラグなり何なりで回避できそうな気が。
0380デフォルトの名無しさん
NGNGどうもありがとう!
検索してみます。
0381デフォルトの名無しさん
NGNG::IsWindow(m_pSplitter->m_hWnd)
これを使おう。
コマンコ(;´Д`)ハァハァ
0382370
NGNGCreate した時点で bCreated = TRUE のようにする方法ですね。
確かにそれだと出来そうですが、イレギュラーな気がしていたので
もっとスマートな方法が無いかなと思って聞いてみた次第です。
>377 も含めて最初から書いておくべきでしたね。すみません。
>>381
その関数は知りませんでした。まだ試してませんがいけそうな気がします。
ありがとうございました。
0383デフォルトの名無しさん
NGNGそれ以上(例えば100000等)の範囲の場合は自分で管理するしかないのでしょうか。
Windows2000, VC6SP5
0384370
NGNGOnSize() は CreateStatic() のすぐあとに呼ばれていたことが分かりました。
そのため CSplitterWnd::GetColumnInfo() で
まだ作られていない列を指定したせいで落ちていたみたいです。
m_wndSplitter.CreateStatic(this, 1, 3);
// ここで呼ばれる
m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CLeftView), CSize(180, 0), pContext);
これだとフラグを立てるしか方法はないでしょうね。
フラグの置き場所が非常に悩むところですが、なんとかやってみます。
皆さんありがとうございました。
0385373
NGNGウインドウ右上の×ボタンじゃないです。。
いつもはシステムトレイに潜んでて、IEとか見てる時に、
マウスでダブルクリックするとキーボードのENDボタンとか
PageDownとか押した事にするやつを作ってみたいと思ってます。
こういうのはどんな関数とか使えば良いのでしょう?
お願いします。
0386デフォルトの名無しさん
NGNGhttp://www.google.com/search?q=%83R%83%7D%83%93%83R&hl=ja&lr=
0387デフォルトの名無しさん
NGNGフラグ以外にも方法はあるぞ。
行・列の総数から判断したらどうよ。
0388デフォルトの名無しさん
NGNG>::IsWindow(m_pSplitter->m_hWnd)
ヌヒよ、ここはMFCスレらしく
m_pSplitter->GetSafeHwnd()
だな。
ただヌヒよ、わざわざポインタにしなくても
m_wndSplitter.GetSafeHwnd()
でOKだが。
0389hh
NGNG◎浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
◎盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
◎行方調査
行方不明になっている家族の消息を調査致します!!
◎電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
◎ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
24時間受付 090−8505−3086
URL http://www.h5.dion.ne.jp/~grobal/
メール [email protected]
グローバル探偵事務局
0390デフォルトの名無しさん
NGNGその時にDLLからアプリにメッセージを送るにはどうすればいいんでしょうか?
よろしくお願いします。
0391デフォルトの名無しさん
NGNGAPIのSendMessageつかえば。
0392370
NGNGVC6 ヘルプより
> 分割ウィンドウの現在の列数を返します。静的分割ウィンドウでは、この値は列の最大値でもあります。
とあるので、ペインが作られているかいないかに関わらず同じ値が返ります。
CSplitterWnd::GetPane() などで NULL でも返ってくれれば楽なんですが、案の定落ちました。
0394390
NGNGアプリ側のある関数を呼び出したい時はどうすればいいんでしょうか?
よろしくお願いします。
0395デフォルトの名無しさん
NGNGアプリ側の関数を呼び出すメッセージをDLLから送る。
メッセージはユーザー定義メッセージな。
0396デフォルトの名無しさん
NGNG悪い、性的分割ウィンドウだったか。
動的とまちがえてた。
0397名無し@沢村
NGNGヌヒにいいことを教えてやろう。
CSplitterWndの派生クラスを作ってGetPane()を以下のようにしたらお望みの動作になるぞ。
CWnd* CMySplitterWnd::GetPane(int row, int col) const
{
ASSERT_VALID(this);
CWnd* pView = GetDlgItem(IdFromRowCol(row, col));
//ASSERT(pView != NULL); // panes can be a CWnd, but are usually CViews
return pView;
}
0398デフォルトの名無しさん
NGNG0399デフォルトの名無しさん
NGNG変な意味に捉えているようだが、男女で分けるってだけのことだ。
0400デフォルトの名無しさん
NGNG0401デフォルトの名無しさん
NGNG0402デフォルトの名無しさん
NGNGCEdit& ED = GetEditCtrl( );
LPTSTR testline = linedata.GetBuffer(1024);
for(i=0;i<=ED.GetLineCount()-1;i++){
ED.GetLine(i,testline);
}
これでエディタ上(?)の文字列取得出来ていたのに自宅でビルドし直したとたん出来なくなりました。
くだらない質問ですがお手上げ状態です。どなたがアドバイスをおながいします。。
0403デフォルトの名無しさん
NGNGstrcpy()
0404デフォルトの名無しさん
NGNGED.GetLine(i,testline);
0405名無し@沢村
NGNGヌヒよ、そのコードは結局は最終行しか取得しないわけだから、以下のようにすべきだな。
CEdit& ED = GetEditCtrl();
TCHAR buf[1024];
ASSERT(ED.GetLineCount() > 0);
ED.GetLine(ED.GetLineCount() - 1, buf, sizeof(buf) / sizeof(TCHAR));
0406デフォルトの名無しさん
NGNGリビルドしてもダメかい
>>404
君は何がしたいんだい
0407デフォルトの名無しさん
NGNGしかしなぜ最終行しか取得してないとおわかりになったのでしょう?
>>404 アドバイスありがとうございます。
>>406 ダメでした。わけわかりません。VCのバージョンとか同じなんですけども・・
0408400
NGNGまずは、RegisterWindowMessageで独自のメッセージを登録すればいいんでしょうか?
よろしくお願いします。
0409名無し@沢村
NGNGヌヒよ、君に特別に教授してあげよう。
>404のコードは
ED.GetLine(i, testline, 1024);
と同じ意味だ。
まあ、人をバカにする前にMSDN嫁ってこった。はっはっは。
0410デフォルトの名無しさん
NGNGどうしてメッセージマップに行くのか良くわからん……
>>401読んだ?
0411デフォルトの名無しさん
NGNG0412デフォルトの名無しさん
NGNGDLLからアプリにメッセージ投げれば済む話では?
WM_APPとかWM_USERとかそのあたりがキーワードになりそうな予感。
複数アプリでDLLの文字列を共有したいならメモリマップドファイル使うんだろうけど。
とりあえず疑問丸投げじゃなくて自分でどこまでやった(調べた)のか書いて欲しいと思った。
0413400
NGNG現在DLL側で
UINT intMessage=RegisterWindowMessage("WM_SOCKMESSAGE");
SendMessage(HWND_BROADCAST,intMessage,0,0);
とし、
アプリ側で
BEGIN_MESSAGE_MAP(CxxxDlg, CDialog)
//{{AFX_MSG_MAP(CChatDlg)
ON_WM_SYSCOMMAND()
ON_WM_PAINT()
ON_WM_QUERYDRAGICON()
ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
ON_BN_CLICKED(IDC_BUTTON1, OnButton1)
ON_BN_CLICKED(IDC_BUTTON3, OnButton3)
ON_MESSAGE(WM_SOCKMESSAGE,OnSockMessage)←ここを追加
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
メッセージハンドラ
void CChatDlg::OnSockMessage()
{
AfxMessageBox("Message OK!!");
}
としています。
メッセージを投げるというのはPostMessage()を使うってことでしょうか?
その場合、第一引数はどうすればいいんでしょうか?(アプリのハンドルの取得方法)
この辺りが混乱しています。
よろしくお願いします。
0414レゴ其の一
NGNG#include<stdio.h>
void main()
{
FILE *fp;
fp=fopen("素数−実行結果.txt","a");
int i, j ,f,n=1000,c=0;
// 1から1000までの数の素数を求める
// i, jはループ変数
// fは一回でも割り切れたら1。
// 一度も割り切れなかったら0。
for(i = 2; i <= n; i++) // i(==2,3,4,..,1000)について調べる。
{
f = 0;
for(j = 2; j < i; j++) // j(==2,3,...,i)で割ってみる。
{
if(i % j == 0) // あるjで割り切れたらfは1。
f = 1;
0415レゴ其の二
NGNGif(f == 0){// iを割り切るjがなかった場合
cout << i << "は素数です。" << endl;
c++;
}
}
printf("%d個です。",c);
}
素数を表示するプログラムなんですが、
実行結果をテキストファイルに出力するにはどうしたら良いですか?
教えて下さい。御願いします。
ちなみに、コレを実行しても、作成されたテキストファイルは白紙になってしまいます。
0416デフォルトの名無しさん
NGNGMFC関係ないな。
とりあえずこの状態でファイルにも書きたかったら fprintf 使え。
あと、fopenしたファイルはfcloseで閉じろ。
0417デフォルトの名無しさん
NGNGSendMessageまで使えているのならなぜ第3/第4引数を0のままにしておく?
そこを使えば済む話だと思うのだが。
というか、そのコードは根本的に何かが違う……
0418デフォルトの名無しさん
NGNG0419レゴ
NGNGMFC自体知らないんで、すみません。
こっちは、もしかしたら、場違いかもしれないと思い。
移動してみた所、マルチポストと勘違いされたみたいでした。
迷惑掛けてすみません。
fprintfを使おうと思ったんですが、エラーがいっぱい出て分かりませんでした。
fopenとfcloseは、どんな関係なんですか?
もしかして、その間のプログラムがファイルに出力されるんですか?
0420レゴ
NGNG実行結果をテキストに出力出来ますかね?
0421デフォルトの名無しさん
NGNGプロ�cなんて知らんが、男が社会の窓を開けたら閉めるのと同じじゃないのか?
閉めないと恥ずかしいだろ?
0422レゴ
NGNGやってみます。
0423レゴ
NGNGfp=fopen("素数−実行結果.txt","w");
int i, j ,f,n=1000,c=0;
// 1から1000までの数の素数を求める
// i, jはループ変数
// fは一回でも割り切れたら1。
// 一度も割り切れなかったら0。
for(i = 2; i <= n; i++) // i(==2,3,4,..,1000)について調べる。
{
f = 0;
for(j = 2; j < i; j++) // j(==2,3,...,i)で割ってみる。
{
if(i % j == 0) // あるjで割り切れたらfは1。
f = 1;
}
if(f == 0){// iを割り切るjがなかった場合
cout << i << "は素数です。" << endl;
c++;
}
}
printf("%d個です。",c);
fc=fclose("素数−実行結果.txt","w");
0424デフォルトの名無しさん
NGNGちみ面白いよ
0425レゴ
NGNGエラーが出ない様にするには、どうすれば良いですか?
0426レゴ
NGNGに移動します。
失礼しました。
0427山崎渉
NGNG0428デフォルトの名無しさん
NGNGダイアログを表示したいです。
Cmenuを継承したクラスを作ればできるのかもしれませんが、ちょっとわかりません。
Wordの下線の色を選択するメニューのようなことをしたいので、
ダイアログ使えないのであれば、別な方法でもよいのでやりかた分かる方、
ご教授お願いします。
0429デフォルトの名無しさん
NGNGオーナードローで書くのかな?
DrawItemとMeasureItemをオーバーライドして……
0430デフォルトの名無しさん
NGNGhttp://www.codeproject.com/miscctrl/colour_picker.asp
0431428
NGNGこれはできてるんです、、、。
0432デフォルトの名無しさん
NGNG0433デフォルトの名無しさん
NGNGWM_INITMENU(だったけな?)
0434デフォルトの名無しさん
NGNGWM_INITMENUPOPUP
0435デフォルトの名無しさん
NGNG左クリックでデモムービー停止させたいのです。
0436デフォルトの名無しさん
NGNG~~~~~~~~~
0437435
NGNGやっぱり、範囲外ですね。失礼しました。
0438デフォルトの名無しさん
NGNGまず、あるエディットボックスにDDXの変数を関連づけました(ed)。
そしてとあるスレッドをCreateThreadで作りました。
スレッドの引数にviewへのポインタを渡して、
内部でview->ed="hoge"とかやって、view->UpdateData(false)をすると落ちてしまいます。
なにがいけないんでしょうか?
0439デフォルトの名無しさん
NGNGview->ed="hoge";
view->UpdateData(false);
}
void CMyView::OnButton(){
CreateThread(NULL,0,th_func,(LPVOID)this,0,NULL);
}
こんな感じです。
0440デフォルトの名無しさん
NGNG全く解りません。
そこで、
「VBのフォームにコマンドボタンを一つ付けて、
コマンドボタンを押したらDLLファイルから読み込んだ
1+1=2という計算をさせて、フォームに表示させる」
ということをしてみたいです。
何方かご教授をお願いします。
0441デフォルトの名無しさん
NGNGどこがわからないのかまず書け。
1. VC++ での DLL の作り方。
2. VB のフォーム/コマンドボタンの作り方。
3. VB での DLL の呼び出し方。
4. VB でのフォームへの表示の仕方。
0442デフォルトの名無しさん
NGNG0443440
NGNG有難うございます。
上記の「1、3」がわかりません。
よろしくお願いします。
一応yahooで検索はしたんですが・・・何も得られずという感じです。
0444デフォルトの名無しさん
NGNGお前には一生無理だから、あきらめて寝ろ。
>>443
まず、3 からやれ。
yahoo/google するなり、本屋/図書館 にでも行けば、VB から API (=xxxx.dll) を呼び出している例はいくらでもあるから、まずそっちをきちんと覚えること。
【要注意】
.dll 呼び出しでは、Visual Basic の多くのチェック機構が働かない。
プログラムを組んだら、まず「実行」すると痛い目にあうことが多い。
(VB 自体が異常終了することがある。)
実行の前に、必ず「保存」すること。
ツール(T) - オプション(O) の 環境 タブで、プログラムの実行時に 変更点を保存 にしておくといいぞ。
0445デフォルトの名無しさん
NGNGちなみに2〜4はスレ違い。
0446デフォルトの名無しさん
NGNG・MFCでは CreateThreadじゃなく AfxBeginThread 使う
・別スレッドに CWndオブジェクトの this を渡すと、ろくなことがない
0447デフォルトの名無しさん
NGNGクローズしたりするとおかしくなるもんなあ・・・・。
0448デフォルトの名無しさん
NGNGいやそれはなにか根本的に違うような。
0449438
NGNGMFCは、標準のCやC++と違う機能がいっぱいで、
どこに落とし穴があるかわかんないので怖いですね。
以前もファイルを扱うとき、シリアライズを使わず
FILE*とfwrite()、fread()という旧来の方法でやってたら
おかしくなったりしたことがありましたし。
0450デフォルトの名無しさん
NGNGそれも何か違うような。
0451デフォルトの名無しさん
NGNG0452デフォルトの名無しさん
NGNGそれじゃ何もできんだろ。(空ファイルを作ることぐらいはできるか...。(w )
0453デフォルトの名無しさん
NGNGMFC を使わなければ WndProc で Message と wParam と lParam が簡単に調べられるのですが、
MFC を使ったときにその 3 つを取得する方法が分かりません。
基本的な事だとは思うのですがよろしくお願いします。
0454デフォルトの名無しさん
NGNGメッセージの処理中に、GetCurrentMessage()。
が、余程のことがなければMFCアプリで直接生のMSGを触らねば
ならんような事態は、避ける設計にすべきだと思うが。
0455デフォルトの名無しさん
NGNGなるほど。
ON_COMMAND や ON_NOTIFY みたいに、メッセージを捕まえた上で
wParam と lParam と共に指定の関数を呼び出すといったことは出来ないのでしょうか。
0456デフォルトの名無しさん
NGNG0458デフォルトの名無しさん
NGNG0459デフォルトの名無しさん
NGNG(CEdit*)GetDlgItem("IDC_EDT")->SetWindowTest("aaa");
と書かれていますが、このCEditのインスタンスはどこで作られているのですか?
ソースを見ていたら
CObject* CHandleMap::FromHandle(HANDLE h)
という関数が、インスタンスが存在しなくても自動的に生成してくれるようですが
それとも、コンパイル時にどこかに埋め込まれているのですか?
0460デフォルトの名無しさん
NGNG別にCEditインスタンスが存在する必要はなくて、
ウィンドウハンドルさえわかれば操作は可能。
そもそもGetDlgItemで作られるのは CWnd で、
CEditはそれを継承したクラスでしょ。
参考にSetWindowTextってWin32APIもあるから調べてみれ。
0461名無し@沢村
NGNGヌヒよ、まず演算子の優先順位を勉強することをおすすめする。
0462デフォルトの名無しさん
NGNG0463デフォルトの名無しさん
NGNG見当違いな物を進めんな
0464名無し@沢村
NGNG(゚Д゚)ハア?
0465デフォルトの名無しさん
NGNG0466459
NGNGWin32APIベースでのプログラミングは普段やっていますのでわかります。
CEditなりCWndのメンバを呼び出すには、インスタンスは必要になりませんでしょうか?
C++の知識が曖昧なので自身は無いですが。。。
>>461
((CEdit*)GetDlgItem("IDC_EDT"))->SetWindowText("aaa");
でした。
0467デフォルトの名無しさん
NGNG(CEdit*)GetDlgItem("IDC_EDT")->SetWindowTest("aaa");
ここでSetWindowTest()はCEdit*ではなくCWnd*のメンバとして扱われる。
0468デフォルトの名無しさん
NGNG0469デフォルトの名無しさん
NGNGそのメンバ関数であるSetWindowText()呼んでるだけだろ?
0470デフォルトの名無しさん
NGNGキャストされてるように見えるかね。
0471sage
NGNGそのCWndの実体は何処にあるのですか?という質問です。
例えば、
CWnd temp;
temp.Atatch ( ::GetDlgItem ( this->m_hWnd, IDC_EDIT ); //←適当に作りました
temp.SetWindowText ( "aaa" );
みたいに実体がないとCWndのメンバ関数は使えないと思うのですが。。。
なんか混乱してきました。
0472デフォルトの名無しさん
NGNG0473名無し@沢村
NGNGヌヒよ、フレームワークはすべてのウィンドウを管理するリストかマップを内部に持っていて
そこでCWndのインスタンスを一元管理しているのだよ。
0474459
NGNGMFC初めていきなりのつまづきでしたが、
質問してからいろいろ調べている間にだんだん解ってきました。
DDXを用いた場合はDoDataExchangeでその辺のことが行なわれているのでしょうね。
ありがとうございました。
0475デフォルトの名無しさん
NGNGネコでもわかる〜はMFC編は少ししか無いので・・・
0476デフォルトの名無しさん
NGNG何かしら簡単なもの作ってみて判らない部分があったらネットで
探すって方法がいい勉強になるよ。
0477デフォルトの名無しさん
NGNGhttp://www.bd.wakwak.com/~opapa/
0478デフォルトの名無しさん
NGNG0479B¥
NGNGどうやれば回避できるでしょうか?
また競合している相手のライブラリは特定できるでしょうか?
お願いします
0480デフォルトの名無しさん
NGNGCランタイムライブラリ関数を使わない
>>478
質問が曖昧で非常に答えづらいが……
・TABキーでフォーカスを移動
・コントロールのプロパティで「標準のボタン」にチェック
このへんだと思う
0481デフォルトの名無しさん
NGNG動的に変えたいって意味なら、SetDefaultButton() "みたいな" 関数が
あるかもしれない。ないかもしれない。(調べてないので)
CWnd か CDialog のクラスメンバをひとつずつ確認して見れ。
0482デフォルトの名無しさん
NGNG開発マシン上では正常に動作するのですが
ほかのマシンの上ではウインドウがちかちかしてしまって
正常に動作できません。
.netの再配布パッケージを入れても同じでした。
このような現象がおきる原因とはどんなものがありますでしょうか?
0483デフォルトの名無しさん
NGNG0484デフォルトの名無しさん
NGNGmanagedなんだかunmanagedなんだかよくわからんな・・・
0485482
NGNGだめでした・・・プログラミングの問題かなあ・・・・
0486デフォルトの名無しさん
NGNGなどのように今の行がどの関数に含まれているのか
置き換えてくれるマクロはありませんか?
0487デフォルトの名無しさん
NGNG__FUNCDNAME__, __FUNCSIG__, __FUNCTION__
見事にあるが、ヘルプ見たか?
0488487
NGNGまさかVC++7からの新機能だったか?
0489デフォルトの名無しさん
NGNGVC6では無かったはず。
0490486
NGNGE:\Projects\hoge\hoge.cpp(41) : error C2065: '__FUNCSIG__' : 定義されていない識別子です。
E:\Projects\hoge\hoge.cpp(41) : error C2065: '__FUNCTION__' : 定義されていない識別子です。
見事に定義されてませんでした。
(´・ω・`)ショボーン
ともかくサンキュ〜。
0491デフォルトの名無しさん
NGNGダイアログにMSFlexGridを直接貼らずに、間にCWndをはさんでその上からはっ付けているのですが、
カーソルキーでのセル間移動が行なわれなくなりました。
(親子関係は DialogBox → WS_VISIBLE|WS_CHILDのウィンドウ → MSFlexGrid)
たぶん、MSFlexGridのPreTranslateMessageがCWndのメッセージを横取りしているだけで、
本来の機能をなしていないのだと思うのですが。違うかもしれません。
CWnd の PreTranslateMessage で SetCol(GetCol()+1) などとすると実装は出来ますが、何か解決策はないでしょうか?
#同じような問題でMSFlexGridのチャイルドにフローターのEditBoxを貼りつけるとカーソルが利かなくなります。
#これはまずいかなと思い、CWndを親にFlexGrid、EditBox、ComboBoxなどをもたせてカプセル化したいのですが。
0492デフォルトの名無しさん
NGNGDLLとしてコーディングしていくとき、確保する配列が大きすぎるとエラーになるものなんでしょうか?
静的に(配列を使う)メモリ確保するとエラーになって、同サイズを動的に(malloc)確保するとうまくいくのですが?
0493デフォルトの名無しさん
NGNGCWnd::PreTranslateMessage内でMSFlexGridのPreTranslateMessageへ丸投げしたらどうだろう。
>>492
どんなエラーかわからないので答えようがありません。
0494デフォルトの名無しさん
NGNGなるほどと思って丸投げしたところ、戻り値ゼロ、即ちPre〜は関係ないみたいです。
よってSDIフレームに貼り付けてみてもやはりだめでした。
コントロールをChildのChildにすると生じそうな問題ってなんでしょうか?
0495491
NGNG現状を完結に書きますのでよろしくお願いします。
MFCダイアログボックスアプリ
メインダイアログの OnInitDialog にて
m_flexGrid.Create ( "test", WS_VISIBLE | WS_CHILD, CRect(〜) , this, uID );
とした場合は正常に作動。普通の使い方です。
これを、間にひとつウィンドウをかませて
m_window.Create ( NULL, "testwin", WS_VISIBLE | WS_CHILD, CRect(〜), this, uID );
m_flexGrid.Create ( "test", WS_VISIBLE | WS_CHILD, CRect(10,10,300,200) ,&m_window, uID );
とすると、カーソルキーが応答しません。
SDIアプリの CMainFrame::OnCreate() に記述すると上記のどちらとも応答しませんでした。
ParentがDialogでなければならない理由があるのでしょうか?
0496デフォルトの名無しさん
NGNG>m_window.Create ( NULL, "testwin", WS_VISIBLE | WS_CHILD, CRect(〜), this, uID );
>m_flexGrid.Create ( "test", WS_VISIBLE | WS_CHILD, CRect(10,10,300,200) ,&m_window, uID );
IDが一緒ですかぃ?
0497デフォルトの名無しさん
NGNG通常の印刷処理では、プリンタの設定で縦横自由に設定できてしまいます。
このあたりの設定を、せめてプリントアウト時にアプリケーションごとに
デフォルトの設定値として行いたいのですが(変更はできても良い)、
具体的な方法が見つからないで困っています。
何かヒントでも構いませんので、ご存知の方いらっしゃいましたら教えていただけませんか?
環境は、
VC++6.0
WinXP、Win2000
です。よろしくお願いいたします。
0498名無し@沢村
NGNGヌヒよ、君に特別にヒントをあげよう。
CWinApp::GetPrinterDeviceDefaults()だ。
0499デフォルトの名無しさん
NGNG0500デフォルトの名無しさん
NGNGやり方が全く解りません。
ご教授お願いします。
0501デフォルトの名無しさん
NGNG#include <wincurs.h>
ChangeCursor(CUR_CLOCK);
0502デフォルトの名無しさん
NGNGどうしてもアイコンが表示されてしまう。
アイコンを表示させない方法ってあります?
0503デフォルトの名無しさん
NGNGどうすればよいですか?
VBでは簡単にできたのですが・・・。
0504名無し@沢村
NGNGCWaitCursor
0505デフォルトの名無しさん
NGNGない
>>503
http://www.google.com/search?q=MFC+%E3%82%BF%E3%82%B9%E3%82%AF%E3%83%90%E3%83%BC+%E8%A1%A8%E7%A4%BA%E3%81%95%E3%81%9B%E3%81%AA%E3%81%84&sourceid=opera&num=0&ie=utf-8&oe=utf-8
0506デフォルトの名無しさん
NGNGMFCじゃないのでsage
0508デフォルトの名無しさん
NGNGコンパックとフラッシュ・カードのcis tupleを取得する方法がわからん・・・。
BSDのPAOていけたんかな・・
0509デフォルトの名無しさん
NGNG一箇所だけ消したいならAfxMessageBoxの代わりにCWnd::MessageBoxを使う。
アプリ全体のAfxMessageBoxで消したいならCWinApp::DoMessageBoxをオーバーライドする。
0510デフォルトの名無しさん
NGNGGetDlgItemを使うしかないのでしょうか?
マイクロソフトサンプルのViewexを見るとラジオボタンもDDXを使っている
のですが、どうやるのでしょうか?
0511デフォルトの名無しさん
NGNG普通にやれ
0512デフォルトの名無しさん
NGNGなんのためのサンプルなのか考えれ
0513デフォルトの名無しさん
NGNGCWnd::GetCheckedRadioButton
0514495
NGNGIDはユニークです。コピペミスです。親子間でユニークである必要があるのかどうかはしりませんが。
どなたかMSFlexGridをウィンドウにに貼りつけた、もしくはATL等で貼りつけたことのある方はいらっしゃらないでしょうか?
MFCベースのDialogに貼ると上手くいきますが、CWndやATLのDialogに貼りつけると
カーソルキーに反応してくれません。
0515デフォルトの名無しさん
NGNGOnNotifyかな……
0516デフォルトの名無しさん
NGNG>親子間でユニークである必要があるのかどうかはしりませんが。
極端な話、1アプリ1IDでも問題ないと?
0517デフォルトの名無しさん
NGNGOnNotifyのなんでしょうか。できればもう少し詳しくお願いします。
>>516
>極端な話、1アプリ1IDでも問題ないと?
問題無いかどうかはしりません。申し訳ない。
ただコントロールIDはそれが属するウィンドウ内で一意であればいいように思ったので。
0518デフォルトの名無しさん
NGNGCCmdTarget::BeginWaitCursor()
CCmdTarget::RestoreWaitCursor()
CCmdTarget::EndWaitCursor()
もありまつ。
CWnd と CApp の基底クラス。
0519デフォルトの名無しさん
NGNGアプリケーションクラスにユーザーメッセージ飛ばそうとしたら問題なく通る。
こ ん な 事 あ る ?
0520デフォルトの名無しさん
NGNGエラーの内容を。
0521デフォルトの名無しさん
NGNG0522デフォルトの名無しさん
NGNG子ダイアログのスタイルはチャイルドでタイトルバー付き。
子ダイアログにエディットボックスを配置。
親から子を表示。
こうすると、子ダイアログのエディットボックスにクリックでフォーカスを移せません。
タブ押せばフォーカスは移るし、入力も出来るのだけど…。
クリックで子ダイアログのエディットボックスにフォーカスを移せるようにするには、どうすればいいんでしょうか?
0523デフォルトの名無しさん
NGNGCEditViweを選択できないのはなぜでしょうか?
0524デフォルトの名無しさん
NGNGvc++.net プロパティー開いてもサイズ変更の項目ない・・・・
netでリソースのbitmapのサイズ変更の仕方教えてたも〜
0525524
NGNGわかったから、もういいや
0526デフォルトの名無しさん
NGNGなぜCHILD……?
>>523
ウィンドウ分割を使用せずにCEditViewを選択状態にして、
ステップ4まで戻って詳細設定からウィンドウ分割を選択すると理由が表示される
0527523
NGNG参考になりました。
しかし、CEditViewとツリービューに分割したい場合
どうすればいいのでしょうか?
0528デフォルトの名無しさん
NGNG生成したと自分で変更
0529デフォルトの名無しさん
NGNGウィザードじゃなくて後から自力で分割するとか、
とりあえずCTreeViewで作っておいて片方をCEditViewにするとか。
0530デフォルトの名無しさん
NGNGありがとうございます。
ウィザードでサポートされていないので自力でも分割できないのかと
思ってしまいました。
0531530
NGNGCTreeViewのサンプルを見たいのですが、
良いものないでしょうか?
またはCTreeViewを使っている簡単なオープンソースの
フリーウェアなどはないでしょうか?
0532名無し@沢村
NGNGヌヒよ、ここで適当に探せば。
http://www.codeproject.com/
http://www.codeguru.com/
0533デフォルトの名無しさん
NGNGループを使ってファイルの中身を全部読み取るとき、
ループ終了条件はどう記述するのがよいのでしょうか?
CFile f(".\\test.dat", CFile::modeRead);
CArchive ar(&f, CArchive::load);
while(1){
ar >> test;
if( 何か ) {
TRACE("全部読み取った\n");
break;
}
}
もしくは
CFile f(".\\test.dat", CFile::modeRead);
CArchive ar(&f, CArchive::load);
while( 何か ){
ar >> test;
}
TRACE("全部読み取った\n");
0534デフォルトの名無しさん
NGNG0535デフォルトの名無しさん
NGNG普通ならリソースにビットマップの画像を登録して、BitBltで画面に表示してから1ピクセルごとにRGBをとるんだけど
CBitmap newBitmap;
CBitmap *pOldBitmap;
newBitmap.LoadBitmap(IDB_BITMAP1);
myDC.CreateCompatibleDC(pDC);
pOldBitmap=myDC.SelectObject(&newBitmap);
pDC->BitBlt(x0,y0,xw,yh,&myDC,0,0,SRCCOPY); //原画像を表示する
myDC.SelectObject(pOldBitmap);
for(j=0;j<yh;j++)
for(i=0;i<xw;i++){
color=pDC->GetPixel(x0+i,y0+j);
r=GetRValue(color);
pDC->SetPixel(x1+i,y0+j,RGB(r,0,0));
g=GetGValue(color);
pDC->SetPixel(x0+i,y1+j,RGB(0,g,0));
b=GetBValue(color);
pDC->SetPixel(x1+i,y1+j,RGB(0,0,b));
}
}
これだと一旦表示してからなので、BitBltをコメントアウトして表示しないようにしたらRGBが取れなくなってしまった…
解決策を教えてください!!
0536デフォルトの名無しさん
NGNG画面のちらつきを押さえるために pDCのコピーを作ってそっちに
描画し、あとでコピーをpDCに写しますが、そういう風にpDCのコピーにビットマップを
描画してはどうですか。
0537名無し@沢村
NGNGヌヒよ、GetDIBits()を使いなさい。
0538482
NGNG>開発マシン上では正常に動作するのですが
>ほかのマシンの上ではウインドウがちかちかしてしまって
>正常に動作できません。
>.netの再配布パッケージを入れても同じでした。
>このような現象がおきる原因とはどんなものがありますでしょうか?
この質問をしたものです。
いろいろ調査した結果、問題は何も処理をしていないのに
onSizeが延々と呼ばれ続けることにあるようです。
そのため再描画が次々かかる模様です。
開発マシンではそのようなことはないのですが、これは
どういう理由によるものと考えられますでしょうか?
0539デフォルトの名無しさん
NGNGウィルス
0540482
NGNGOnPaintが延々と呼ばれていることでした。
OnPaint内でPostMessage(WM_SIZE)していたのです。
どうもダイアログアプリケーション内でのOnPaintの扱いが
よくわかっていないようです。
もう少し調べてみます。汚してすいません。
0541デフォルトの名無しさん
NGNGWM_SIZEだすとOnPaint呼ばれるというループ
0542482
NGNGありがとうございます。
PosMessage(WM_SIZE)をやめたら
全体がチカチカするのは何とか抑えられました。
リストビューやエディットボックスはきちんと使えるのですが、
今度はコンボボックスだけがクリックしても反応させることができません。
おそらくなにか余計なメッセージがでてじゃましているのかと検討をつけているのですが・・・
0543デフォルトの名無しさん
NGNGhttp://www.google.com/search?q=CTreeView+%E3%82%B5%E3%83%B3%E3%83%97%E3%83%AB
0544デフォルトの名無しさん
NGNGコントロール内にいくつもボタンを配置する手段で
悩んでおります。
できるものならダイアログテンプレートを使用した
いのですが、どうやってCOleControlにバインドさ
せたらいいのかわかりません。
どなたか、このあたりの手練手管に長けた方、教え
ていただけませんか?
VC6、Win2000です。
0545デフォルトの名無しさん
NGNG>紙サイズ限定なんてイヤすぎる……
定型フォーマットの用紙に印刷したいときなどは必須ですね。
人間の操作のし忘れをウィンドウズでカバーできないというのも、
使い勝手が悪いことのひとつでしょうな。
0546デフォルトの名無しさん
NGNGただ、通常のMDIのタイプと違って、ダイアログベースで作っています。
まず、タブコントロールを用意して、一つのタブにバイナリエディタ
を表示させようとしています。
別のタブには、たとえばプログラムを逆アセンブルしたリストなどを表示。
こんな感じで作っているのですが、バイナリエディタ部分は
どのクラスを使うのが最適でしょうか?
0547デフォルトの名無しさん
NGNG強いて挙げるならEditコントロールかな……
ルーラーもできないことはない。
単純に貼り付けるだけで実現できるようなコントロールはないと思う。
ダイアログベースというのがそもそも間違いな気がしないでもない。
0548546
NGNG思います。
だけど、今回は、バイナリエディタ以外にもいろいろと機能を
持った総合的なソフトを作ろうかと思ってるので困っています。
必須な機能としては
・タブで項目を選べること
・バイナリエディタ
・プログラムを逆アセンブルしたものを表示
・ラジオボタンで選択したり、エディットボックスに入力したり。
こんな感じなので、各機能をタブで分けて表示するのが
便利かなぁと思っているのですが。
0549デフォルトの名無しさん
NGNG作成し実行しただけなのですが、
新規ファイルを開いただけでエラーが発生します。
何が悪いのでしょうか?
0550549
NGNG右側のviewとしてCEditViewを選択しました。
0551デフォルトの名無しさん
NGNGいつも思うけど、どうして質問者は「エラーが起こります」としか書かんのかねぇ?
エラーって言ってもピンからキリまであるだろうに。
>>523-529
あたりを参考にしる。
>>548
いや、タブで切り替えにしてもダイアログベースにこだわる必要は全然ないよ……
ダイアログベースでないとタブとか使えないと思ってるのかな?
いや総合的なアプリを作ろうとしてるのにそんなわけはないよな。
0552449
NGNG失礼しました。とりあえず手動で分割したら
エラーは出なくなりました。
0553デフォルトの名無しさん
NGNG> >>549
> いつも思うけど、どうして質問者は「エラーが起こります」としか書かんのかねぇ?
状況把握できないほどパニクってるから。
つーか「天は自ら助く者を助く」だと漏れは思うんだけどそんな香具師は自分で解決しちゃう率が高いっぽいのであとにはカスしか残らないのでわ?
0554デフォルトの名無しさん
NGNG幼稚園児レベルにもわかるように。
0555デフォルトの名無しさん
NGNGではスタート↓
0556デフォルトの名無しさん
NGNGついでにWinAPI32スレとVC++スレも。ついでにCスレとC++スレ・・・
0557デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/tech/1039607377/
★初心者にVisual C++を教えるスレ★ Part4
http://pc2.2ch.net/test/read.cgi/tech/1044196393/
VisualC++ 相談室【9】
http://pc2.2ch.net/test/read.cgi/tech/1036897197/
C++相談室 part15
http://pc2.2ch.net/test/read.cgi/tech/1043605481/
Windows Programing for C/C++(Not MFC)
http://pc2.2ch.net/test/read.cgi/tech/1018239290/
Win32API 質問箱 Build8
http://pc2.2ch.net/test/read.cgi/tech/1040964626/
0558デフォルトの名無しさん
NGNGせめてここでは多少の厨的な質問にも答えてやって欲しい気がしないでもない。
0559139
NGNGさすがに度を越えた香具師が多いしな・・・(;´Д`)
0560デフォルトの名無しさん
NGNG質問内容のレベルはどうでもいいんだけど、
質問の仕方を小学校で学びなおしたほうがいいヤツが大杉
0561デフォルトの名無しさん
NGNG「MFC Appwizard(exe)」
と「
Win32 Application」
がありますが、基本的には前者はMFCクラスライブラリを使うことが出来て
後者はそれが使えない、という程度の違いなのでしょうか?
0562デフォルトの名無しさん
NGNG実際に新規作成して違いを比べてみればいいよ
それでもわからなかったら質問して
0563デフォルトの名無しさん
NGNG後者でも自前で設定すりゃ使えるが面倒。
Wizardってのは、あくまで手動による手間とミスを減らすためのツールに過ぎん。
0564質問者
NGNGID_FILE_SAVE_COPY_AS のハンドラを自前で用意したいのだが
デフォルトのハンドラの殺し方&オーバライドの方法がわかりません。
ふつーに CWinAppやCFrameWndの派生クラスに
ID_FILE_SAVE_COPY_ASのCommandハンドラを用意しても無反応。
どうすればよいのでしょう?
0565デフォルトの名無しさん
NGNGID_FILE_SAVE_COPY_AS つかわずに自前でIDを用意する、っていうのはナシ?
0566564
NGNGな、なるほど‥‥。
ほかに手段がなければそうするしかないですが‥‥。
0567デフォルトの名無しさん
NGNG0568564
NGNGID_FILE_SAVE_COPY_AS じゃなくてID_FILE_SAVE_AS でした。
(表記間違い)
0570デフォルトの名無しさん
NGNG>ふつーに CWinAppやCFrameWndの派生クラスに
それはちっともふつーじゃない。
MSDN の「検索」でID_FILE_SAVE_AS を検索してごらん。
無反応なのは、コマンドルーティングの優先順位の関係だろう。
0571デフォルトの名無しさん
NGNG0572デフォルトの名無しさん
NGNG変えられるよ
頭にRichを付けるだけ
0573デフォルトの名無しさん
NGNGを配置したいのですが、MFCが生成したコードのどこを追加したら配置処理ができますか?
ダイアログを使わないやり方で教えて下さい。
0574デフォルトの名無しさん
NGNGMFC AppWizard ステップ1でSDI
MFC AppWizard ステップ6で基本クラスCFormView
0575デフォルトの名無しさん
NGNGCButton型の変数などをビュークラスのメンバ変数として持っておいて、
OnCreateで作成・OnSizeで配置。
0576デフォルトの名無しさん
NGNGデータベースのfield1というフィールドからdoubleの値を取り込みたいときに
COleVariant olebaka;
CString strbaka;
olebaka = m_pRecordset->GetFieldValue("field1");
strbaka = V_BSTRT(&olebaka);
のようにしてCString型に変換してからdoubleに変換するしかないのでしょうか?
というかCStringからdoubleに変換する方法もわかりません。
V_BSTRT以外に何かよい方法はありませんか?
どちらかでもいいのでよろしくお願いします。
0577デフォルトの名無しさん
NGNG取り出すときは文字データとしてしか得られないからCStringなのは当り前。
0578デフォルトの名無しさん
NGNGWIN32APIのTerminateThreadみたいなやつありませんか?
0579デフォルトの名無しさん
NGNGない。
0580デフォルトの名無しさん
NGNG0581デフォルトの名無しさん
NGNGAPI レベルで、TerminateThread を使っていいかという議論はさておき、MFC レベルだと絶対ダメ。
0582578
NGNG素直にTerminateThreadつかいます
>>581
>MFC レベルだと絶対ダメ。
TerminateThread結構便利で、つい頼っちゃうんだけどまずいっすか?
0583デフォルトの名無しさん
NGNG問題があると疑った方がいいかも
0584名無し@沢村
NGNGヌヒよ、スレッド終了用のEventでも用意しなさい。
0585デフォルトの名無しさん
NGNGMFCのスレッドは扱いに気をつけませう
0586578
NGNG皆さんアドバイスどうもです
0587デフォルトの名無しさん
NGNG{
ASSERT(lpsz == NULL || AfxIsValidString(lpsz));
AssignCopy(SafeStrlen(lpsz), lpsz);
return *this;
}
ここのASSERTで引っかかるんですがこれってどういう意味ですか?
ちなみにstrcore.cppのline 344のところです。
0588デフォルトの名無しさん
NGNGASSERTとAfxIsValidStringをヘルプで調べることをオススメする。
0589デフォルトの名無しさん
NGNGちょうどサルネイルみたいな感じで表示させたいんだが…
そういう関数ってある?
0590デフォルトの名無しさん
NGNGビットマップを転送元の四角形から転送先の四角形に移動します。このとき、必要に応じて、転送先の四角形に合うように、ビットマップを拡大、縮小します。
0591デフォルトの名無しさん
NGNGあとも1つ質問ですが、ビットマップを縮小したときに画像の絵ってやっぱり潰れてしまうのでしょうか?
(例えば線が消えてしまうとか)
0592デフォルトの名無しさん
NGNG潰れないように縮小はムリだろ。
ベクトルデータでラインとかのデータを持ってりゃ別だが。
0593デフォルトの名無しさん
NGNG自動的に「別のユーザーとしてプログラムをインストール」という画面が出てきて
きますが、プログラムの中から system関数や_spawnl関数などででsetup.exeや
install.exe を実行すると「別のユーザーとして…」の画面が出てきません。
プログラム中からsetup.exeやinstall.exeを実行して、「別のユーザーとして…」の
画面を出すにはどうしたらいいでしょうか?
(ダメな例)
system("setup.exe");
_spawnl(_P_WAIT, "install.exe", "install.exe", NULL);
開発環境:Windows2000SP3 VC++6
0594デフォルトの名無しさん
NGNGちょっとすぐに試せないんで想像で悪いけど、ShellExecuteとかもダメかい?
0595593
NGNGできました!!ありがとうございます!!
(できる例)
ShellExecute(this->GetSafeHwnd(), "open", "c:\\setup.exe", NULL, NULL, SW_HIDE);
0596デフォルトの名無しさん
NGNGこのタイプのプログラムではメニューが最初から1つあると思うのですが、
メニューを使わないのでメニューを表示させないようにしたいです
どうすれば良いでしょうか。
よろしくです。
0597デフォルトの名無しさん
NGNG0598デフォルトの名無しさん
NGNGお礼が遅くなりました。どうもありがとうございます。m(__)m
0599デフォルトの名無しさん
NGNGダイアログベースで、エディットボックス(以下edit)の上に重ねて
リストボックス(以下list)を配置しました。
タブオーダーでeditを1、listを2にするとリストは表示されるがマウスクリックを受け付けず、
逆にするとクリックは出来るが選択した項目だけ描画され、枠は表示されません。
listをeditに重なるように表示させ、
かつマウスで項目を選択できるようにするにはどうしたら良いのでしょうか?
リストを再表示させようとInvalidate()やUpdateWindow()、
SetWindowPos()でwndTopMostをセットしてみたりもしたんですが、
どうにもうまく行きませんでした。
0600デフォルトの名無しさん
NGNG>ダイアログベースで、エディットボックス(以下edit)の上に重ねて
>リストボックス(以下list)を配置しました。
なにがやりたいわけ?
0601デフォルトの名無しさん
NGNGコンボボックスじゃダメなんだろうか。
0602デフォルトの名無しさん
NGNGexeをサーバーから再ダウンロードして、自分自身を再起動させる感じで
いいと思うのですが、
自分自身のexeを終了させてから、かわりに新しくダウンロードしたexe
を起動させるにはどうしたらよいでしょうか?
また、exeも同名、同位置で入れ替えたいのですが・・・
どなたかアドバイスください
0603デフォルトの名無しさん
NGNG0604602
NGNGそこで、リネームかコピーするにしても
元のexeから実行すると、それを書き換えることはできないですよね・・・
そこが悩みです
0605デフォルトの名無しさん
NGNGじゃあ、別のexeを作ったら?
a.exeの中でb.exe起動 -> bはaが死ぬまで待機 -> aが死んだら書き換え
->aを起動してbは終了。
こんな感じで。
a.exeの中でb.exeをリソースとして持ってb.exeを実行時に生成
すればbも更新する事も出来る。
0606602
NGNGありがとうございます
姑息ですが、いけそうですね!
メッセンジャーのアップデートとか、ほかのプログラムも
やはり概ね、ほかのプロセスから制御ってのがポイントですかねーー
0607デフォルトの名無しさん
NGNG姑息っつーか普通はそうだと思うぞ、
b.exeとか言ってるから姑息っぽいけど普通はsetup.exeとかになるだろ
0608デフォルトの名無しさん
NGNGどーにもこーにも出せません。
codeprojectのSizableReBar_demoがアイコンの右に文字をだしているので、
ソースを追っていて、下に文字を出すところまではできたのだけど、
右に出せないのです。どーしたらいいのか教えてください。
オーナードローとかしなきゃいけないのかなぁ。
0610デフォルトの名無しさん
NGNGだからコンボボックスじゃいかんのかと。
0611デフォルトの名無しさん
NGNGそれって重ねる必要なくない?
editの下にlistを置けば良いと思うが・・・
0612デフォルトの名無しさん
NGNGそれを終了させる方法を教えてください。
あと、任意のexeを起動させる方法教えてください
0613599
NGNGテキストエディタでカンマが入力されると、
カレット位置に次の候補リストが表示される、と。
>>610
コンボボックスのエディット部を利用するということですか?
でもあれって1行だけですし・・・テキストエディタにはならないかと
>>611
カレット位置にリストを持っていきたいので、
どうしてもエディットボックスに重なるようになります
一番納得のいかないことは、
タブオーダーでリストを最前面にする:フォーカス当たるが描画されない
エディットボックスを最前面にする :(リストに)フォーカスはないが描画されている
コレあべこべなんじゃないかと。
リスト云々は抜きにして・・・
コントロールが二つ重なったときに、
どちらかを最前面(フォーカス、描画ともに)にするにはどうすればいいのでしょうか
同じ親ウインドウを持つ子ウインドウ同士では不可能なのでしょうか
あるいは描画の順番の問題なのかも・・・
0614デフォルトの名無しさん
NGNGどっちも同じ子供なんだから、片方だけ特別扱いはできないだろ。
そういう使い方するんなら、リストボックスの方を独立したポップアップウィンドウにすれ。
子ウィンドウである限り、親ウィンドウの外には出られないという制約がつくわけだし。
0615名無し@沢村
NGNGTBSTYLE_EX_MIXEDBUTTONS
TBSTYLE_LIST
BTNS_SHOWTEXT
0616612
NGNGあるプロセス(というかEXE)が、実行中かどうかを調べたいのですが
APIがわかりません。API名だけでもいいのでどなたか教えてください。
0617名無し@沢村
NGNGヌヒよ、本当に調べたのか?
http://www.google.co.jp/search?q=cache:TwFOROT3lsoC:www.microsoft.com/japan/support/kb/articles/J041/6/32.htm+%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9+%E5%88%97%E6%8C%99&hl=ja&lr=lang_ja&ie=UTF-8
0618612
NGNGありがとうございます
しかし、、「列挙」なんて検索ワードは思いもつきませんでした。
1つ1つ比較するしかないですかー
単純に任意の「〜.exe」が実行中かどうか一発で調べられる
便利なAPIはやっぱないんですかね
0619デフォルトの名無しさん
NGNG0620デフォルトの名無しさん
NGNGで、結局どこが嘘なの?
0621デフォルトの名無しさん
NGNGDeleteFileしてみてエラーが出たら実行中だyo!
0622612
NGNG実行終了と同時にファイルが消えてしまうのは、いただけませんねー
0623デフォルトの名無しさん
NGNG0624デフォルトの名無しさん
NGNGお父さんに教えてもらいなさい
0625デフォルトの名無しさん
NGNGどこかに詳しく載ってるサイトなどはありませんか?
書籍でもいいのですが・・・。
どうかよろしくお願いします。
0626デフォルトの名無しさん
NGNGMFC70.1432
って何の関数でしょうか。。。?
.NETを買えばすむ話なんですが。。。(^^;
0627デフォルトの名無しさん
NGNG通常どういう手順で行っていくんでしょうか?
0628デフォルトの名無しさん
NGNGDirectDraw
0629
NGNG>626
>627
あんたら使うツールを間違えてるよ。
ぶちゃけ、その程度の質問をするようではまず、使いこなすのは無理でしょう。
時間のムダだと思うよ。w 多分参考となるレスはつかないでしょう。
恥ずかしくないですか?というより、は〜ぁって感じだね。他のででつくれば・・
0630デフォルトの名無しさん
NGNGどこを縦読みすればいいんですか?
0631デフォルトの名無しさん
NGNG0632デフォルトの名無しさん
NGNG呼び出して即Releaseしてみたら、戻り値のカウントがそれぞれ2,1と
なってて、これ以上Releaseしてもカウントが減らないんですけど
これはどういうことなんでしょうか?
この状態でアプリを終了させて問題ないということでしょうか。
0633632
NGNG0634デフォルトの名無しさん
NGNGこれをWindows風にしたいのです。
しかし、私はMFC等使ったことがないのでどうすればいいのかよくわかりません。
とりあえず自分でボタンの配置は作れたのですが、そこからどうすればいいのか・・・・。
このソースで、どうやればWindows風にできますか?DOS窓ではなくWindowsにしたいのです。
よろしくお願いします。
ボタンの配置は、テキスト入力欄があって、その下に
保存。キャンセルのボタンがあるだけです。
どうかよろしくお願いします。
0635634
NGNG#include <stdio.h>
int main(void)
{
char memo[100];
FILE *fp;
fp = fopen("memo.txt", "w");
if(fp == NULL){
printf("ファイルをオープンできませんでした。\n");
return 1;
}
else{
printf("ファイルをオープンしました。\n");
}
scanf("%s",memo);
fputs(memo,fp);
printf("ファイルに書き込みました。\n");
fclose(fp);
printf("ファイルをクローズしました。\n");
return 0;
}
0636デフォルトの名無しさん
NGNG0637あ
NGNGいやいや、それだけ調べたってどうにもならないでしょう。
>635
VC6なのか.NETなのか書いてないのでなんともいえないが、
6なら新規作成からAppWizardで
MFCアプリケーションを作成する。
もちろんダイアログ。
途中で聞かれると思う。
んでリソースエディタ上でエディットボックスと保存ボタンを配置。
キャンセルボタンは初めからあったと思う。
んで配置した保存ボタンをダブルクリックすると
自動でコード書くところに飛ぶのでそこにそのコードを貼り付ける。
>printf("ファイルをオープンできませんでした。\n");
はMessageBox("ファイルをオープンできませんでした。");
に変更すること。これで動くんじゃない?
VC6手元にないし無責任だけどw
あと、returen 0;もいらない。
0638634
NGNG適切で丁寧なご回答ありがとうございます。
使っているのはVisualStudio.NET2002内のVisualC++7.0です。
今からそれをヒントに自分でがんばってみます。
>あと、returen 0;もいらない。
これはMFCだからいらないという意味ですか?
それともreturn 0;を書かなくてもmain関数には自動的に0で認識されるから
いらないと言ってるのです?
便乗質問すいませんがよろしくお願いします。
0639あ
NGNG新しいプロジェクト->Visual C++ プロジェクト->MFCアプリケーション
->アプリケーションの種類->ダイアログ ベースにチェック
->完了ボタン
出てきたリソースエディタ上のダイアログに
エディットコントロールとButtonを置く。
->Button1のCaptionをプロパティにて「保存」に変更する。
->エディタ上の保存ボタンをダブルクリック
->そこに書く
以上。
適当に書いた。時間ないから動く以上の動作は期待しないでください。
なんせ寝なきゃならんので時間がないんで。
んでUPもした。
わからん関数はF1で調べてください。
ttp://f6.aaacafe.ne.jp/~nich/phpup/upload.php
の「VCsrc」ですのでダウンしたら消しておいてください。削除パス123
return 0;については単にボタン押した時にWindowsが呼ぶ関数がvoid型だから。
WindowsプログラミングはWindowsが呼んでくれる関数の中に
あらかじめコードを書いておく、って形式なんだよ。
じゃおやすみなさい。
0640デフォルトの名無しさん
NGNGこんなところで質問して解決しようとしているようじゃ、いつまでたっても上達しないよ。
参考書ぐらい買えば?
0641デフォルトの名無しさん
NGNGオブジェクト指向とか、イベントドリブンとかの意味は分かってますよね?
分かっていなければ、ここはまだあなたが来るべき場所ではありません。
0642デフォルトの名無しさん
NGNGShell自体がまずいのかShellExtensionsがまずいのかは知らないけどよくある事
Shell関連は必要なら別プロセスに追い出して処理完了後にそのプロセスを終了させている
もっといい方法があるなら知りたいがMFCと無関係だからスレ違い
0643634
NGNG特に>>639氏、本当に感謝です。
ありがとうございました。
>640
>641
VisualStudioを使ってるのですが、VisualStudioに関する書籍は売ってないんですよ。
MFCの本も近所には売ってないし・・・
0644デフォルトの名無しさん
NGNGVisualStudioってのはMSOfficeと同じように複数のソフトの集合体だよ?
主なものはVC++とVB。
そのうちのVC++なんだからVC++の本でいいんだってば。
0645デフォルトの名無しさん
NGNGお薦め本のスレがあるからそこ行って聞いて来てオンラインショッピングで買いなさい。
amazonあたりが無難でしょ。
0646634
NGNG以前、VS.NETの使い方を覚えるのに
VC++の本を買うのは正解か、ととあるスレで聞いたのですが
答えはノーでした。
ソフトの集合体ということは当然知ってますが・・・。
>645
わかりました。
今度、初めてアマゾンを利用してみます。
0647デフォルトの名無しさん
NGNGVC++
VB
VC++.NET
VC#.NET
VB.NET
の5種類あるという認識でいいの?
0648デフォルトの名無しさん
NGNG0649デフォルトの名無しさん
NGNG0650デフォルトの名無しさん
NGNG0651634
NGNG実は、私はCしか使えないので、C++は読めないんです。
でも、デフォルトのままだとすべてがC++で書かれてますよね?
そのような場合はどう対処したらいいのでしょうか?
>>635のソースをC++としたらコンパイルできないじゃないですか。
どうしたらいいのですか?
よろしくお願いします。
0653デフォルトの名無しさん
NGNGとりあえずスレタイ10回くらい読み直してから
参考書見てMFCって言葉の意味を理解してから出直してきてくれ。
0654634
NGNGじゃあ最後にこれだけ教えてください。
MFCはC++ができなくてもCだけで使えますか?
0655デフォルトの名無しさん
NGNGそれすらわからないってことはCも使えないんじゃないですか?
0656634
NGNG入門本より少し技術があるって程度です。
0657デフォルトの名無しさん
NGNGネタじゃなくてもネタ相当の書き込みは放置すること。
0658634
NGNGネタじゃありません。
最初にも書いたとおり私はMFCを使うのが初めてで、
本もなく困ってるんです。
絶対にネタではありません。
いつまでもこのスレに未練を持っちゃうだろ。
>>654
MFCはC++用のクラスライブラリ。Cで扱うことは出来ない。
以上。
では、適したスレに移ってくれ。
0660デフォルトの名無しさん
NGNGお前がネタとは言ってないわけだが、
なんでそんなに必死なの?( ´,_ゝ`)
0661名無し~3.EXE
NGNGint nRetern = dlg.DoModal();
if(nRetern == IDC_NEXT){
CNextDialog dlgNext(&dlg);
dlgNext.DoModal();
}
↑的なコードをかいてもdlgNextが表示されません。
いじくると出るんですが。。。
普通はどうやるんですか???
お願いします。
0662デフォルトの名無しさん
NGNGフォームビューを切り換えるやり方ならCodeGuruにサンプルあるよ。
0663デフォルトの名無しさん
NGNGぷろぱちーしーとのウィザード形式でどうよ?
0664名無し~3.EXE
NGNGCodeGuruをちょとみただけなのでよく分かってないんですが、
いっぱいサンプルがあるみたいなので・・・。
0665デフォルトの名無しさん
NGNGMSDNのCPropertySheet読んで見たら?
0666名無し~3.EXE
NGNGはい。そうします。
ありがとうございました。
0667デフォルトの名無しさん
NGNGリッチエディットコントロールはデフォルトでUnicodeを使っているようで、
事実複数言語(私の場合日本語とハングル)の入力と表示が可能になっています。
ところが、GetSel(0,-1)で全範囲選択してGetSelText()で得られた文字列の
日本語部分は、シフトJISになっていて、
他の言語で入力された部分は空白(0x20)が入っているだけです。
DDXを使ってCStringを関連づけても、同様の結果になってしまいました。
リッチエディットコントロールでの複数言語の扱いはどうなっているんでしょうか。
0668667
NGNG0669デフォルトの名無しさん
NGNGlpBuf のバッファの確保の仕方がわかりません。どうやったら確保できるのでしょうか。
0670デフォルトの名無しさん
NGNGnewでやってもいいし、サンプル見たいならgoogleで「CHttpFile Read」とでも
やればすぐ出てくるし、何を難しく考えることがあろうか。
0672デフォルトの名無しさん
NGNG-----------
| | | |
| |------|
| | |
-----------
という感じの分割ウィンドウを作りたいのですが、
MainFrm.cppのメッセージハンドラのソースを教えてください。
--------
| | |
|------|
| |
--------
だけとかならできるのですが・・・
0673デフォルトの名無しさん
NGNG図を間違えました。
四角を横に2分割→AとB
Bを縦に2分割→C(上)とD(下)
Cを横に2分割としたウィンドウを作りたいんです。
0674デフォルトの名無しさん
NGNGワロタ
0675デフォルトの名無しさん
NGNGそのウインドウプロシージャ内にて
WM_LBUTTONUPを拾おうとしたんですが出来ません。
どうすればできますか?
0676デフォルトの名無しさん
NGNGそれは本当にMFCでやってるのかと小一時間・・・
0677667
NGNGリッチエディットは最初からCRichEditCtrlがありますよ。
でもリッチエディットのメッセージを拾うのは、最初わからなくて私も苦労しました。
デフォルトではメッセージを送らないようになっているので、
このクラスのSetEventMask()で使うメッセージのマスクを設定する必要があります。
また、初期化系の関数でAfxInitRichEdit()を使うのも忘れないでください。
0678672
NGNG教えてください(笑。
0679デフォルトの名無しさん
NGNG図がわからん。モナ板でAAの練習してこい。673の説明もわからん。
AAを作る上で重要なのは、
・フォントはMSPゴシック12pを基準としている
・行頭の半角スペースは無視される
・半角スペースが2つ以上連続すると1として数えられる
ということだ。
0680672
NGNGご指導ありがとうございます。
図は下記のようなものです。
隙間はつなげて、四角の中でやってると思ってください。
-----------
| | | |
| | | |
| |-------
| | |
| | |
-----------
0681名無しさん@Meadow
NGNG0683デフォルトの名無しさん
NGNG| | | |
| | | |
| |------- バーカ
| | ◎ ◎.|
| | ー |
-----------
0684675
NGNGCRichEditCtrlを継承したクラスで
WindowProcをオーバーライドって方法でやっています。
ほかのメッセージ(WM_LBUTTONDOWNとかWM_KEYUPとか)はうまく動作してるのに
なぜWM_LBUTTONUPだけがだめなんだろうと悩んでいました
なるほど、イベントマスクというものがあったんですね
ありがとうございます
これについて勉強しようと思います
0685デフォルトの名無しさん
NGNG#include "MyView.h"
class CMainFrame : public CFrameWnd
{
(略)
//以下を追加
CSplitterWnd spl1, spl2, spl3;
//デフォルトのビューは消す
//CChildView m_wndView;
(略)
}
0686デフォルトの名無しさん
NGNGBOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
CRect rc;
GetClientRect(rc);
spl1.CreateStatic(this,1,2);
spl2.CreateStatic(&spl1, 2,1, WS_CHILD|WS_VISIBLE|WS_BORDER, spl1.IdFromRowCol(0,1));
spl3.CreateStatic(&spl2, 1,2, WS_CHILD|WS_VISIBLE|WS_BORDER, spl2.IdFromRowCol(0,0));
spl3.CreateView(0,0,RUNTIME_CLASS(CMyView),
CSize(rc.Width()*1/3,rc.Height()*1/2), pContext);
spl3.CreateView(0,1,RUNTIME_CLASS(CMyView),
CSize(rc.Width()*1/3,rc.Height()*1/2), pContext);
spl2.CreateView(1,0,RUNTIME_CLASS(CMyView),
CSize(rc.Width()*2/3,rc.Height()*1/2), pContext);
spl1.CreateView(0,0,RUNTIME_CLASS(CMyView),
CSize(rc.Width()*1/3,rc.Height()), pContext);
spl2.SetRowInfo(0,rc.Height()*1/2,0);
return CFrameWnd::OnCreateClient(lpcs, pContext);
}
0687デフォルトの名無しさん
NGNGそれからクライアント領域はすべてスプリッタが占めるから
元々の(アップウィザードが吐き出した)Viewを使ってるコード消すこと。
フレームの定義のOnCreate()、OnSetFocus()、OnCmdMsg()あたりにあるはず。
以上。
0688デフォルトの名無しさん
NGNGドキュメント・ビューアーキテクチャを使ってる場合は
CMyViewなんてクラスを作らなくても元のビューを使えばいい。
でも窓を分割するって事はそれぞれに違ったビューを使うんだろうな。
CSplitter::CreateView()の第3引数で入れたいビューを指定してやれば
それぞれの分割された窓枠で各ビューの処理ができる。
0689669
NGNGどうやら確保するサイズ[]が抜けていたようです。
0690672
NGNGどうもありがとうございます!
うあってみましたが、最終的な分割になりませんでした。
たぶん、私が値を返すのが間違えてるんだと思いますので、
いろいろ調べてみます。
0691672
NGNG×:うあって
○:やって
0692デフォルトの名無しさん
NGNGEditボックスで右クリックでメニューを出すよう実装したいのですが、
それとEditのデフォルトカラー(背景と文字)を変更したいのですが、
なにか簡単な方法はないですか?
0693デフォルトの名無しさん
NGNG0694672
NGNGspl3.CreateView(0,0,RUNTIME_CLASS(CMyView),
CSize(rc.Width()*1/3,rc.Height()*1/2), pContext);
を消し、
最後に
return = TRUE
と加えたら、希望のものができました。
ありがとうございました。
0695デフォルトの名無しさん
NGNGwindows起動時にログを取りたいのですが
どうやれば起動時にプログラムが実行されるでしょうか?
スタートアップに入れたのですが駄目でした。
0696初心者
NGNG0697デフォルトの名無しさん
NGNG今、使用しているOSはMEです
VisualC++6.0とVisualC+が+netの違いを教えてください。
初心者にとっては、OSの事を考えて旧バージョンのほうが
無難でしょうか
よろしくお願いします。
0698デフォルトの名無しさん
NGNGVC++.Net は2000/XPにしか入らないよ。
0699デフォルトの名無しさん
NGNGhttp://www.microsoft.com/japan/msdn/vstudio/productinfo/sysreq.asp
0700デフォルトの名無しさん
NGNGhttp://www.microsoft.com/japan/msdn/vs_previous/vstudio/
0701デフォルトの名無しさん
NGNG初心者がOSを替えてまでnetを購入するのがいいのか
旧6を探して勉強するのいいのかの質問でしたが。
0702デフォルトの名無しさん
NGNG初心者が9x系でプログラミングするのを勧めるほど
このスレは悪意に満ちていません
0703デフォルトの名無しさん
NGNG技術的な質問しろ。
0704あ
NGNGどういう風に駄目だったのか詳細かいてね
0705デフォルトの名無しさん
NGNGインストール時にXPservice pack1のディスクを入れろと言われるんだが、どうしたらいいのですか?
そんなディスク持ってません・・・
0706705
NGNGOSはXP.
0707デフォルトの名無しさん
NGNG0708705
NGNGおいらへですか?
0709デフォルトの名無しさん
NGNG月曜になったら、MSに注文しろ。
0710705
NGNG買うのか?
0711デフォルトの名無しさん
NGNGSetStretchBltModeでモードを選ばないと駄目だと言われたのですが、これはどうやって使うのでしょうか?
ヘルプみてもいまいちわからず…
0712デフォルトの名無しさん
NGNGせめて何がどうわからないのか説明すること。
0713デフォルトの名無しさん
NGNGパソコン初心者板へゴー
http://pc2.2ch.net/pcqa/
0714デフォルトの名無しさん
NGNG何故ヘルプを見てもわからないの?
伸縮モード
WHITEONBLACK 白優先
BLACKONWHITE 黒優先
HALFTONE 中間色(ディザリング?)
COLORONCOLOR 計算せずに単純に間引く
0715デフォルトの名無しさん
NGNG0716デフォルトの名無しさん
NGNG0718デフォルトの名無しさん
NGNGCDialogウィンドウ上からCFrameWndを
Create関数を呼び出して作成したのですが例外が多発してしまいます
対処法ありますか?
それとCDialogウィンドウにCStatusBarを作成したのですが
全く表示されませんけど仕様ですか?
(CFrameWndなら当然問題無く表示されます)
0719デフォルトの名無しさん
NGNGそもそもフレームにダイアログ表示すればいいのでは?
0720デフォルトの名無しさん
NGNGCFormView使えばいいと思うんだが。
> 全く表示されませんけど仕様ですか?
あなたのバグです。
しかるべき手順を踏めば表示されます。
0721デフォルトの名無しさん
NGNG0722デフォルトの名無しさん
NGNGこのスレもそろそろおしまいか・・・
0723デフォルトの名無しさん
NGNGエラーになってしまうと思うのですが、文字列長を取得する方法はありますか?
0724デフォルトの名無しさん
NGNGテキストだけならGetItemTextを使えばいいと思われ。
0725デフォルトの名無しさん
NGNG文字列取りたいなら GetItemText 使え
0726723
NGNGメンバー関数が多すぎて見逃してますた。
0727デフォルトの名無しさん
NGNGいやそれくらいはわかるんだけど……
どんな例外かな、と。
0728デフォルトの名無しさん
NGNG釣りですか?w
0729デフォルトの名無しさん
NGNGはい。
0730デフォルトの名無しさん
NGNG0731デフォルトの名無しさん
NGNG0732デフォルトの名無しさん
NGNGCViewにスクロールバーが付いていなければ
OnMouseWheel が呼ばれるのですが
スクロールバーがついていると勝手にスクロールさせられ、
OnMouseWheel が呼ばれません。
ホイール回転で独自の処理をする事は出来ないのでしょうか?
(スクロール以外の処理をしたいのですが・・・)
環境は Win2000, VC++6です。
0733デフォルトの名無しさん
NGNG試してないから推測で書くけど……
勝手にスクロールされるなら OnHScroll や OnVScroll が呼ばれるんじゃない?
そこで処理すればいいと思う。(拡大縮小かな?)
0734デフォルトの名無しさん
NGNGreturn HTCAPTION; を実装すると右クリックでメニューを出せなくなりました。
回避する方法はありませんか?
0735デフォルトの名無しさん
NGNG0736デフォルトの名無しさん
NGNGそれともう一つなのですが、
CEditから派生させたクラスからダイアログのメンバを実行するのは無理ですか?
GetWindowRectを取得したいのですが。
ClientToScreenでは移動させてからだと座標がまちまちになってしまうのです。
0737732
NGNG返答有難うございます。
実際、 OnHScroll や OnVScroll が呼ばれるのですが、
スクロール処理はスクロール処理として扱いたいのです。
「OnHScroll等がホイール操作によって呼ばれた」と判断可能なのでしたら、
その方法も有りかとは思うのですが、そういった事は可能なのでしょうか。。。
> 拡大縮小かな?
その通りです。
お絵かきソフトを作成しています。
>>736
> CEditから派生させたクラスからダイアログのメンバを実行するのは
それって例えば
((CDialog*)GetParent())->・・・
みたいな事ですか?
0738デフォルトの名無しさん
NGNG0739デフォルトの名無しさん
NGNGクラス内の関数にアクセスする方法がわかりません。というか関数の先頭ポインタがわかれば
いいんですけど。newしてインスタンス化してもポインタを捕れないのは何ででしょうか?
ひょっとして訳わからないこと言ってますでしょうか?
0740デフォルトの名無しさん
NGNGスクロールバーを自作する。
0741デフォルトの名無しさん
NGNG単にエクスポートされてないだけとか?
>>738
BitBlt
0742デフォルトの名無しさん
NGNGすいません。エクスポートされてないだけって、どういうことですか?
なにぶん初心者なので、それだけでは何を言われているのか...
もう少しキーワードを教えてください...お願いします。
0743デフォルトの名無しさん
NGNGDLL の操作では基礎中の基礎。
MSDN の DLL のトピックを読んでみ。話はそれからだ。
0744デフォルトの名無しさん
NGNGどうすればよいでしょうか?
0745デフォルトの名無しさん
NGNG俺はOnDestroyでやってるんだけど、これって普通?
0746744
NGNG0747デフォルトの名無しさん
NGNG0748デフォルトの名無しさん
NGNGMSDN読めよ……
0749デフォルトの名無しさん
NGNGありがとうございました。解決しました。
0750デフォルトの名無しさん
NGNGCListBoxの派生クラスを作って、そのメンバ関数でnewしたオブジェクトを
AddString((LPSTR)new CObj);ってやってよくわからないことをしてます。
これはいったい何をしてるんだ?
どなたかお教え願えないでしょうか?
0751デフォルトの名無しさん
NGNGスクロールバーでスクロールバーの三角印をところをクリックすると
イベントが発生するのですが、スクロールをスライドしてもイベントが発生しません
どうしてなのでしょう。
0752デフォルトの名無しさん
NGNG何のイベントやねん
0753デフォルトの名無しさん
NGNG0754744
NGNGはぁ。m_cfに代入していったのですが、適応されないのです。
それに、フォントの種類の代入の仕方もわかりませんし。
それから、宣言時にパラメータを入れると、実行途中に
フォントをインストールするように指示されるのでさっぱりです。
教えてください。
0755デフォルトの名無しさん
NGNG>>753
さんスクロールバーの範囲といわれてハッと気がつきました
そういう物は設定していなかった気がします。
ごめんなさい、なんだかMFC以前のような問題な気がします...
ちょっと確認します。
あと、CStaticクラスを継承して作ったBitBlt()ってスクロールバーでスライドできますでしょうか?
つまりスクロールバーでスクロールしたぶんだけ表示位置を再計算をして
再表示?するようなことをしたいのです。うまく説明できないんですけど
0756デフォルトの名無しさん
NGNGCTime jikoku = CTime::GetCurrentTime();
int hour = jikoku.GetHour() % 12;// 時:0〜11
int min = jikoku.GetMinute();// 分:0〜59
int sec = jikoku.GetSecond();// 秒:0〜59
// ウィンドウのサイズを得る
CRect sikaku;
GetClientRect(sikaku);
// 時計のサイズを算出する
int hankei = min(sikaku.right, sikaku.bottom) * 49 / 100;// 時計の半径
一番下段を詳しく説明してもらえないでしょうか
0757デフォルトの名無しさん
NGNGスレ違いだが
時計がWindow領域からはみ出ないような
時計の半径も出してる
0758名無し@沢村
NGNGヌヒよ、sikaku.rightとsikaku.bottomのうちで小さい方の値に49をかけて100で割った値が時計の半径だ。
0759デフォルトの名無しさん
NGNGくっついちゃうなー」とか思って49%にしたんだろ。
0760デフォルトの名無しさん
NGNGUINT func(LPVOID);
となっていますが、この返値はどこで得ることができるんでしょうか。
0761デフォルトの名無しさん
NGNG0762デフォルトの名無しさん
NGNG0763デフォルトの名無しさん
NGNG0764デフォルトの名無しさん
NGNGワトソン博士のlogを見ると"Ordinal2614"ってのでエラーが発生しているようです。
Dependency Walkerで調べるとOrdinal2614はmfc42.dll中にあったんですが、
NONAMEとなってて関数名がわかりません。これって特定する方法があるんで
しょうか?
以下ワトソン博士のlogです。
全部は多いので"フォールト ->"のあるスレッドのみ。
スレッド ID 0x26c のステート ダンプ
eax=0036322f ebx=0034d368 ecx=0154fe94 edx=ffffffff esi=0048fb50 edi=00ad7225
eip=6ab149fc esp=0154fe7c ebp=00000000 iopl=0 nv up ei pl nz na po nc
cs=001b ss=0023 ds=0023 es=0023 fs=0038 gs=0000 efl=00000206
ファンクション: Ordinal2614
6ab149fa 8b01 mov eax,[ecx] ds:0154fe94=0036322f
フォールト ->6ab149fc 8378f800 cmp dword ptr [eax+0xf8],0x0 ds:00fc0801=????????
6ab14a00 0f8569f1ffff jne Ordinal1194+0x15f (6ab13b6f)
6ab14a06 c3 ret
*----> スタック バック トレース <----*
FramePtr ReturnAd Param#1 Param#2 Param#3 Param#4 ファンクション名
00000000 00000000 00000000 00000000 00000000 00000000 !Ordinal2614
0765デフォルトの名無しさん
NGNGDependency Walkerでmfc42.dllを見たらBaseAddressのってました。
Baseが0x6ab10000だったので
6ab149fc-6ab1000=49fc
となります。mfc42.mapも同じディレクトリにあったので49fcに近い
のを探したところ
0001:0000492a ?UpdateFrameCounts@CDocument@@UAEXXZ 5f40592a f
どうやら、こいつのようです。
「UpdateFrameCounts」って何もんなんだろう?
MSDNにも載ってないし。こっからどうせめればいいのかわからん・・・。
0766デフォルトの名無しさん
NGNGmfc42.dllのどのアドレスに何の関数があるのか知ってる香具師なんか
ここにいるわけねーだろ。いたらリバースエンジニアリングで犯罪だぞ。
0767あ
NGNGMFCのどの関数でなぜ落ちたのか、という発想ではなく、
アプリケーションでなにをしたから
MFC内で落ちることになったのか、
という風に発想を転換した方がいいんじゃないでしょうか?
0768デフォルトの名無しさん
NGNGそういう場合、普通デバッグモードを駆使して原因を突き止めるものだが。
>「UpdateFrameCounts」って何もんなんだろう?
\MFC\SRC\DOCCORE.CPP
を読めばわかる。
可視状態のCViewをカウントし
CFrameWnd::m_nWindowを更新するための関数みたいだな。
0769デフォルトの名無しさん
NGNG任意のEXEを起動するための関連付けをしたいのですが、
いい資料が見つかりません。レジストリを操作するところまでは
わかったのですが。
すいませんが、どなたかコードか、参考URLをお持ちでしたら
ご教授ください
0770デフォルトの名無しさん
NGNG0771デフォルトの名無しさん
NGNGアプリで関連付けをしたいのか?
それとも関連付けられたアプリを起動したいのか?
0772デフォルトの名無しさん
NGNGすぐ見つかるが
0773
NGNGご存知の方、教えてください。
1はよく使われると思うので、VC++の機能であるような気がしますが、
googleしてもわかりません。
1.PCのデスクトップを頂上とし、そのPCの階層フォルダ(?)を表示することが
できるようなツリー
2. 1で選択したフォルダ内のファイルを全部表示させるもの
(サイズ、種類、更新日時も表示)
3. アクセス履歴を表示するもの
0774773
NGNG0775デフォルトの名無しさん
NGNGVC++の機能にそんなものはない。
ま、がんばれや(´ー`)y~~
0776773
NGNGツリーで表示するもののことです。
0777デフォルトの名無しさん
NGNGんだろうがMFCには無いぞ。
1はフォルダ選択ダイアログがあるがWin32APIだ。
0778デフォルトの名無しさん
NGNG0779デフォルトの名無しさん
NGNG1.
2.
http://www.codeproject.com/shell/seashell.asp
0780デフォルトの名無しさん
NGNG0781デフォルトの名無しさん
NGNG自動的にフォルダツリー表示してくれるかよアフォ。
0782あ
NGNGの
Reg
ってファイル。
昔書いたやつ。
今見てもなんのことかさっぱりさっぱり。
レジストリに書き出したらもともと登録してあった
拡張子をiniに書き出して、復元時にiniから読み出して
元に戻す関数なようなきがする。
たぶん「IDS〜」ってやつは
レジストリに書き込むキーの名前を決めて
格納していたんだと思う。
なお、かなり前のやつなので参考程度にしかならないと思ってくれ。
んで、落としたら消してくれ。
パスは123
0784デフォルトの名無しさん
NGNGレジストリ操作するとこまでわかったならレジストリ系APIで登録すればいいんじゃ?
MFCな話題でもないような気がするんだけど・・・
0785あ
NGNGあぁ、宛先忘れてたよ。
>782はあなた充て。
>782は新たな関連付けを定義する関数。
既に定義されていたら入れ替える。
見てみたら形つかめると思うよ。
0786デフォルトの名無しさん
NGNG失礼しました。ちょっと書き方がうかつでした。
自分が担当を引き継いだアプリがお客様先で落ちてしまい、
開発環境で再現しないのでログからなんとかしようとしてた次第です。
>>767
ええ、そうなんですがフォールトしたスレッドの情報が少なすぎて
どこから落ちたMFCをcallしたかもわからないんです。
>>768
情報ありがとうございます。
再現しないので開発環境でつきとめれないんですよね・・・。
やはり、お客様先で落ちたときにもっと情報とれるように
するしかなさそうですね。その方法を調べてみます。
0787質問
NGNGいま、COMプログラミングの勉強をしていますが、ビルトすると以下のエラーが出ます。
→d:\microsoft sdk\include\exdisp.h(1119) : error C2061: 構文エラー : 識別子 'SHANDLE_PTR' がシンタックスエラーを起こしました。
その対象となる構文は
→ virtual /* [helpcontext][helpstring][propget][id] */ HRESULT STDMETHODCALLTYPE get_HWND(
/* [retval][out] */ SHANDLE_PTR *pHWND) = 0;
です。
何に問題があるのでしょうか?
よろしくお願いします。
0788デフォルトの名無しさん
NGNG'SHANDLE_PTR' がシンタックスエラーを起こしました
って書いてあるじゃん。
そこが問題。
0789\
NGNG表示したいのですが、どうすればいいのでしょうか?
分割ウィンドウは過去スレであったので、できたのですが、
まだ一つのダイアログしか作成したことないので、わかりません。
IDD_DIALOG1、IDD_DIALOG1という2つのダイアログを作成した場合で
教えてください。
0790デフォルトの名無しさん
NGNG>左右2つにわった分割ウィンドウに、それぞれ別のダイアログを
>表示したいのですが、どうすればいいのでしょうか?
CFormView派生クラス使ってるなら、もう一個CFormView派生クラスを作ればよろし。
0791789
NGNG0792789
NGNG0793789
NGNGCreateView(〜View)
とすればいいのだと思うんですが、
IDD_Dlg1,2を〜Viewにする(?)には
どうすればいいのかがわかりません。
0794デフォルトの名無しさん
NGNG意味がわかりません
0795789
NGNG解決しました。
ありがとうございました。
0796デフォルトの名無しさん
NGNGCString型の変数にcharの配列の文字列を入れて
文字列を作りたいんですけど、いい方法が浮かびません..
CString c;
char[0]=a
char[1]=b
char[2]=c
char[3]=d
char の配列をCに入れてabcdという文字をCString型のcに入れたいのですが。
0797デフォルトの名無しさん
NGNGなによりも先に入門書を買ってきて一通り読むことを勧めるがね…
charの配列型の変数の名前が書かれてないがarrayという
名前にしていいかね?
char array[] = "abcd" ; //(1)
CString c(array) ; //(2)
ちなみに(1)は
char array[5] ;
array[0] = 'a', array[1] ='b', array[2] = 'c', array[3] = 'd', array[4] = '\0' ;
と同じだ。
0798デフォルトの名無しさん
NGNGいいです
で、
実際c(0)="abcd"
にするほうほうがわからないんですが....
0799デフォルトの名無しさん
NGNGなによりも先に入門書を買ってきて一通り読むことを勧めるがね…
0800デフォルトの名無しさん
NGNGerror LNK2005: "void __cdecl h(enum bb::Lang)" (?h@@YAXW4Lang@bb@@@Z) はすでに test.obj で定義されています
Debug/test.exe : fatal error LNK1169: 1 つ以上の複数回定義されているシンボルが見つかりました
となってコンパイルできません。(コンソールでは問題ありませんでした。)
なぜだめなのでしょうか?
//testDlg.h
namespace bb
{
enum Lang;
enum Lang{Japanese};
};
void h(bb::Lang a);
void h(bb::Lang a){}
class CTestDlg : public CDialog
...
0801デフォルトの名無しさん
NGNGヘッダに書いていいのは(ry
つーか、スレ違い。
0802デフォルトの名無しさん
NGNGtestDlg.h をインクルードするc(cpp)ファイルが複数あった場合、
void h(bb::Lang a) 本体が複数定義されることになる。
includeが何なのか分かってないみたいね。
0803デフォルトの名無しさん
NGNGデバッグビルド → 正常動く
リリースビルド(F5) → 正常に動く
リリースビルド(Ctrl+F5) → エラーで落ちる
という状態になってしまい、原因が特定できません。
何か有効なデバッグ方法があれば教えて下さい。
0804803
NGNG0805デフォルトの名無しさん
NGNGnamespace 以下のヘッダーを読めば良かったのか...。
>>801,2 さんありがとうございました。
0806デフォルトの名無しさん
NGNGスクロールバーのつまみの部分(マウスの左ボタンを押しながら上下に移動するもの)の
大きさってどうやって変えるんでしょうか?
0807デフォルトの名無しさん
NGNGレンジを指定すればそれに応じて変わるけど。
0808デフォルトの名無しさん
NGNGSetScrollInfo
あと、あれの名前はサムと呼んでくれ
0809デフォルトの名無しさん
NGNG次からはどうやって勉強していけばいいんでしょう?
0810デフォルトの名無しさん
NGNG専門書
詳細は推薦図書スレへ
0811デフォルトの名無しさん
NGNG普通になんか作る。
0812806
NGNGMSDNでよーく調べてみまふ
0813デフォルトの名無しさん
NGNGOKを押すとある処理を行って終了するのですが、
その処理中にOKを押すと、処理が終わったらまたすぐに
処理が始まってしまいます。
処理中はマウスクリックを無効にしたり、マウッスクリク情報をクリア
したりすることが出来ないでしょうか。
(処理中のOKボタンをグレーにしても、処理中にボタンを押すと
処理が終わって元に戻したらクリックされたことになってすぐに
処理が始まってしまいます)
0814デフォルトの名無しさん
NGNG( ゜ Д゜)
0815デフォルトの名無しさん
NGNGループ処理の間、メッセージポンプを動かすために CWinApp::Run() を勝手に
呼んでいいのでしょうか?
0816815
NGNGMFCにおいてループ処理の間、メッセージポンプするために
PeekMessage、TranslateMessage、DispatchMessage
を自前で呼ぶのは、合法なのでしょうか?
0817デフォルトの名無しさん
NGNG俺ならスレッド作ってそっちで処理するけどね。
0818デフォルトの名無しさん
NGNGCRectTracker::TrackHandle()でGetMessage(), DispatchMessage()
使ってるからいいんだろ、
0819815
NGNGどうも。実際やってみましたけど、終了処理をきちんと書けば大丈夫みたいです
ね。別スレッド化は真っ先に考えましたが、かなりややこしい修正が必要で...
0820デフォルトの名無しさん
NGNGプログラム立ち上げ時に変数 hoge を 0 で初期化。
ボタンが押されると変数 hoge を 1 に設定。
処理が終わると変数 hoge を0 に設定。
変数 hoge が1の間はボタンクリックを無視する。
こうすれば2度押ししても効果が現れないはず。
0821デフォルトの名無しさん
NGNG俺なら別スレッドで処理してその間はボタンをEnableWindow(FALSE)するな。
0822デフォルトの名無しさん
NGNGボタンを一時的に消すとか。
0823デフォルトの名無しさん
NGNGっていうか、その処理の中でもメッセージループまわしてるの?
単純に、OnOK()の先頭でEnableWindow(FALSE)、
OnOK()の最後にEnableWindow(TRUE)とすれば良いような気がするが。
0824デフォルトの名無しさん
NGNG0825デフォルトの名無しさん
NGNGてかこれが違ってたら今まで作ったもの全て大バグ
かかえてるってことになるんですが・・・
0826デフォルトの名無しさん
NGNG>(処理中のOKボタンをグレーにしても、処理中にボタンを押すと
>処理が終わって元に戻したらクリックされたことになってすぐに
>処理が始まってしまいます)
これが問題なんでしょ?
ってか、どうせ終了してしまうんだから、処理が終わったときに
EnableWindow(TRUE)を呼ばなきゃイイと思うのだが。
0827デフォルトの名無しさん
NGNGそれから、ダイアログって半透明になりますか?
0828デフォルトの名無しさん
NGNGできます。
0829ら抜きことば逝ってよし
NGNGメニューバーの色は自前で実装すれば変えられる。
半透明に関しては↓(Win2000以降だけの気がするが……)
http://www.google.com/search?hl=ja&ie=UTF-8&oe=utf-8&q=%E3%83%80%E3%82%A4%E3%82%A2%E3%83%AD%E3%82%B0+%E5%8D%8A%E9%80%8F%E6%98%8E+MFC&btnG=Google+%E6%A4%9C%E7%B4%A2
0830デフォルトの名無しさん
NGNGドキュメントクラスにダイアログボックスを変数として持たせようと思っているのですが
こういうのはルール違反なんでしょうか?なんか抵抗があるのですが…
0831デフォルトの名無しさん
NGNG最近どこかで同じ問題を見たような気がする。
たとえEnableWindow(FALSE)しといてもボタンを連打されると
駄目(ボタン押下のメッセージが来てしまう)なので
結局は>>820-821みたいに対処しないといけないって結論じゃなかったかな。
>>825氏には残念なお知らせだが…
0832デフォルトの名無しさん
NGNGメッセージ自体、飛んでくるわけ無いでしょ。
ウィンドウズのアーキテクチャ、基本から勉強したほうが良いよ。
0833デフォルトの名無しさん
NGNG0834デフォルトの名無しさん
NGNGそりゃ使い方が悪いだけだろ
0835デフォルトの名無しさん
NGNG禿同
存在意義は十分にあると思う
>>832
メッセージループをまわしてなくてもメッセージは飛んできます。
処理されないだけ。
0836デフォルトの名無しさん
NGNGそのまま終了するのなら2度とOKボタンを押せないように
なにかインターフェイスを考えるべきでは。
たとえば処理の最初にプログレスバー付きの終了ウィンドウのようなものを表示するとか。
0837デフォルトの名無しさん
NGNG来るとしたら、処理が終わってメインループが回りだしたら。
メッセージキューに溜まることを飛んでくると勘違いしているだろ。
0838833
NGNGだから、そんな使い方をしたら存在意義が無くなる、と言うことだ。
0839デフォルトの名無しさん
NGNGってことは、その処理中にメッセージループをまわしているってことで、
そんな処理やめれば良いじゃんってことで解決。
0840デフォルトの名無しさん
NGNGダイアログでOKボタン押したら、普通はダイアログ消えるよね。
モードレスダイアログのこと?
0842デフォルトの名無しさん
NGNGEnableWindow(FALSE)にしときゃ、メッセージなんて飛んで来ないぞ。
少なくても(WM_COMMAND,IDOK)とかはな。
0843デフォルトの名無しさん
NGNG( ´∀`)/<先生!こんなのがありました!
_ / / / \___________
\⊂ノ ̄ ̄ ̄ ̄\
||\ \
||\|| ̄ ̄ ̄ ̄ ̄||
|| || ̄ ̄ ̄ ̄ ̄||
http://saitama.gasuki.com/shinagawa/
0844デフォルトの名無しさん
NGNGとうぜん画面設計がありますよね?
皆さんは画面設計について何か参考にされているものってあり
ますか?
参考書や他のアプリを参考にするとか?
ボタンの配置1つとっても考えると難しいものですよね?
画面設計について参考になるサイトや書籍等ありましたら
教えてください。
0845デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/tech/kako/1036/10368/1036897197.html
おまえここの970だろ?
0846デフォルトの名無しさん
NGNGメニューバーを自前で実装とはどうするのでしょうか?
0847デフォルトの名無しさん
NGNGAs you like.
ttp://www.codeguru.com/menu/index.shtml
0848831
NGNGありゃりゃ?こんなに紛糾するとは。
コード書きながらやってるわけじゃないから自信なくなってきたよ。
こういうケースが問題だったと思うんだけど?
(1)メッセージ(WM_COMMANDだったかWM_LBUTTONDOWNだったか?)
がキューにポストされる
(2)連打したのでもう一個メッセージがキューにポストされる
(3)(1)でポストされたメッセージがメッセージループで取り込まれて
処理開始。
(4)EnableWindow(FALSE)を実行。これ以後はメッセージをポストできない。
(5)(1)のメッセージの処理終了
(6)(2)でポストされたメッセージの処理開始…
0849デフォルトの名無しさん
NGNGSDI使わずDialogでやってる、特に問題ないし
0850アイパー
NGNGさせています。テキストを読んだ際空白の行は詰めて表示したいです。
以下はソースです。どこを直せばよいかご教授願います。よろしくお願いします。
{
CFileDialogDlg (TRUE, NULL, NULL, OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
"Text Files (*.txt) |*.txt||");
if (Dlg.DoModal () != IDOK)
return ;
CString path = Dlg.GetPathName ();
CStdioFile file;
if( !file.Open( path, CFile::modeRead | CFile::typeText ) ) {
return;
}
CListBox*pList = (CListBox*)GetDlgItem(IDC_LIST3);
pList->ResetContent();
CStringbuf;
while (file.ReadString(buf)) {
pList->InsertString(-1, buf);
}
file.Close();
}
0851デフォルトの名無しさん
NGNGこの文字列が空白行かどうか調べて、次の動作を行うか、
やめるか決めればよいのでは。
0852813
NGNGみなさん、色々アドバイスありがとうございました。
結局、メッセージキューに残っている余分なクリックを
削除(退避)させるということでけtyちゃっくしました。
お忙しい中ほんとに色々ありがとうございました、。
0853デフォルトの名無しさん
NGNGEnableWindow()をうまく使えばそんなトリッキーなことしなくて済むのに。
っていうか、ずっとそんな綱渡り的処置でずっとアプリ組んでいくつもり?
>>848
(1)と(2)の間にEnableWindow(FALSE)すれば済んじゃうこと。
以上、言ってみるテストでした。
0854デフォルトの名無しさん
NGNGやってから言ってね。
0855デフォルトの名無しさん
NGNGスペースを離さずエンターを押してスペースを離すと
ボタンが二回押されたようになるのですが
どうして回避したら言いのでしょうか?
0856デフォルトの名無しさん
NGNGVisualC++.netをつかってるんですけど、
本屋には6.0の解説本しかなく、それで勉強しています。
6.0と.netでは、クラスウィザードの表示の仕方が違うらしく、
全然わかりません・
例えばSDKのプロジェクトに、OnLButtonDown関数を
追加するときはどうすればいいんでしょう?
0857デフォルトの名無しさん
NGNGヘルプ読んでください。
0858デフォルトの名無しさん
NGNGamazonででも.netの入門書買ってください。
0859813
NGNGそれが済まないから困っていたのです。
ボタンをFALSEにした後にクリックしても
それが押したことになってしまうということです。
0860駆け出しPG 代理
NGNGMakeDir関数がうまくよびだされません
どうしたらいいでつか?
char sPath;
void MakeDir(char sPath)//呼ばれる側
{
//puts(sPath);
CreateDirectory("c:\ttt", NULL);
}
EXPORT void __stdcall CopyDir(LPCSTR sSource , LPCSTR sDest)
{
CreateDirectory(sDest, NULL);
ForceLastBackslash(sPath);//呼ぶ側
}
0861デフォルトの名無しさん
NGNGchar sPath;
って書いてるけどCはわかってんの?
0862駆け出しPG
NGNGコードおかしいですか?
簡単なコードだとおもうんですが わかっていないので
きちっと動くように直していただけたら助かります
お願いします。
0863デフォルトの名無しさん
NGNG自力でなんとかしろ。
0864デフォルトの名無しさん
NGNG0865デフォルトの名無しさん
NGNGチョトワラタ
0866デフォルトの名無しさん
NGNGhttp://pc.2ch.net/test/read.cgi/prog/1038361129/850-
0867デフォルトの名無しさん
NGNG0868デフォルトの名無しさん
NGNG可能
かのう?
0869デフォルトの名無しさん
NGNGナニがしたいのかよーわーらんが、
普通
char *sPath;
それと
"c:\\ttt"
とにかくWarning最大限にしてすべての警告つぶすように。ガンガレ
0870デフォルトの名無しさん
NGNGCの独習書をやり遂げるまで出社しないほうがいいと思う。
0871デフォルトの名無しさん
NGNGおまえ、たぶん何やってもダメだよ。
0872駆け出しPG
NGNGちょっと危機を感じてきてるんで
勉強してみようかなあと
ボロカスに言われるのは覚悟した上での
質問ですーだれか親切な人いないかな
0873駆け出しPG
NGNGありがとうございます。やってみます
0874デフォルトの名無しさん
NGNG0875駆け出しPG
NGNG0876デフォルトの名無しさん
NGNGこちらにいきましょう。
http://pc2.2ch.net/test/read.cgi/tech/1045746245/l50
0877デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/tech/1045542179/l50
0878デフォルトの名無しさん
NGNG>だれか親切な人いないかな
(゚Д゚)ハァ?
0880デフォルトの名無しさん
NGNG{〜}
として、外部の関数から
Cb **b = 0;
*b = new Ca;
としたのですが、コンパイルエラーはでないのですが
デバッグエラーがでます。
ようは、Cbから多様なCa を操作したいのですが。
Caを必要に応じて交換するのですが、
なにかにた方法はないですか?
0881デフォルトの名無しさん
NGNGb = new Ca;
じゃないの?
0882デフォルトの名無しさん
NGNGボタンなどのコントロールのタブオーダーをキメたいんだけど
プロパティページのボタン1
↓
プロパティシートのボタンA
↓
プロパティページのボタン2
↓
プロパティシートのボタンB
とかってどうやってる?
0883デフォルトの名無しさん
NGNGにして入れ込みたいんですが、どうすればいいんでしょうか?
また、複数に分割したウィンドウにフォームビューでなくダイアログを
入れ込む方法があれば教えてください。
0884デフォルトの名無しさん
NGNGん〜。
動作的には同じことだろ?
0885デフォルトの名無しさん
NGNG6.0使っていれば、.NETもすぐ慣れますか?
0886デフォルトの名無しさん
NGNGおいおいおいおいおいおいおいおいおいおいおいおいおい
0887デフォルトの名無しさん
NGNGあんたの適応能力なんてシラネーヨ
0888デフォルトの名無しさん
NGNG0889デフォルトの名無しさん
NGNG0890デフォルトの名無しさん
NGNGアホハッケン
0891デフォルトの名無しさん
NGNGMFCで使っているCString をWin32 で導入するには、どうすればいいのでしょうか?
0892デフォルトの名無しさん
NGNGWTLに付属する、atlmisc.hをインクルード。
それかSTLのstd::stringを使う。
0893デフォルトの名無しさん
NGNGdisc の中を検索したのですが、見つかりません。
どこからコピーするのでしょう?
0894デフォルトの名無しさん
NGNGWTL落として来い
0895デフォルトの名無しさん
NGNGあの、最背面に固定したいのです。
0896デフォルトの名無しさん
NGNG最前面に移動するメッセージを殺すとか常にZオーダーの最後になるようにするとか
0897デフォルトの名無しさん
NGNG0898デフォルトの名無しさん
NGNG現在の解像度はどのようにすれば取得できますでしょうか。
0899デフォルトの名無しさん
NGNGhttp://www.google.com/search?q=%E8%A7%A3%E5%83%8F%E5%BA%A6+%E5%8F%96%E5%BE%97+MFC
0900デフォルトの名無しさん
NGNGデスクトップのウィンドウを取得してサイズ調べる。
GetDesktopWindow()とGetWindowRect()でできます。
0901デフォルトの名無しさん
NGNG0902デフォルトの名無しさん
NGNG0903デフォルトの名無しさん
NGNG何かいいものあれば教えてくれませんか?
http://www.amazon.co.jp/exec/obidos/ASIN/479731768X/qid=1047397176/sr=1-1/ref=sr_1_2_1/249-5797932-5526724
を本屋でパラパラ見た限りでは、あまり使えなさそうでした。
用途は新入社員用の入門テキストです。
VC6用の本なら山ほどあるんですけどね。
0904デフォルトの名無しさん
NGNGオマエが書いて教えろ
0905デフォルトの名無しさん
NGNGマルチうぜぇ
0906デフォルトの名無しさん
NGNGマルチうぜぇ
0907デフォルトの名無しさん
NGNGGetSystemMetrics(忘れた)
0908デフォルトの名無しさん
NGNG0909デフォルトの名無しさん
NGNGLVS_NOCOLUMNHEADER
0910デフォルトの名無しさん
NGNGありがと
0911デフォルトの名無しさん
NGNGとある理由でウィンドウの最小化ボタンが押されても
そのウィンドウを最小化せずに別の動作を行わせたいのですが
WM_SIZEは最小化後に送られてくるので困ってます
0912デフォルトの名無しさん
NGNG0913デフォルトの名無しさん
NGNGレスサンクス
CDialogではWM_SIZING送られてこないみたいです
別の方法探してみます
0914デフォルトの名無しさん
NGNGつうかまあ、本質的にはスレ違いのような。
0915デフォルトの名無しさん
NGNGフリーじゃなくてもいいです。
0916デフォルトの名無しさん
NGNG楽っていっても漠然としすぎていて馬鹿にしているとしか思えないのだが。
具体的にどんな機能が欲しい、とか書いてくれんと答えようがない。
0917デフォルトの名無しさん
NGNGMBCSで1バイト文字と2バイト文字を、自前で判定しなくていいクラスです。
(同じ1文字として処理できるクラス。)
0918デフォルトの名無しさん
NGNGそれくらい自分で作れ、CStringを派生させて。
0919デフォルトの名無しさん
NGNG単なるクレ厨にしかみえないんだよね。
ちなみに掲示板で質問したり人に聞いたりすることは「調べた」って言わないからね(^_^;)
っていうと「検索しました」って返されるけど、検索ワード聞くと逃げちゃう人が多数。
0920デフォルトの名無しさん
NGNG文句だけ垂れ流して、何の役に立たない上級者気取りもウザイよ
0921デフォルトの名無しさん
NGNG0922デフォルトの名無しさん
NGNGuniに変換して使うのか??
0923デフォルトの名無しさん
NGNGstd::wstringは中に入ってる文字列のエンコードは気にしないから自分の勝手だろ。
0924デフォルトの名無しさん
NGNGそこっ、サロゲートペアとか言うな!
0925デフォルトの名無しさん
NGNGわざわざUTF-16なんか持ち出して込んでもいいべよ。
おまえその単語使いたかっただけちゃうんかと。
0926デフォルトの名無しさん
NGNGほれ。
http://www.google.co.jp/search?q=CStringEx&ie=UTF-8&oe=UTF-8&hl=ja&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
0927デフォルトの名無しさん
NGNGサロゲートペア〜
0928デフォルトの名無しさん
NGNG0929デフォルトの名無しさん
NGNG0930928
NGNG+----------------------+
| |
| | ←A
+----------------------+
| |
| | ←B
+----------------------+
| |
| | ←C
+----------------------+
のA,B,Cともに別のviewを表示したいんだが
非表示のスプリッタ使えばいいかと思ったんだけど・・・
もっと簡単な方法ありますか?
0931デフォルトの名無しさん
NGNG0932デフォルトの名無しさん
NGNG0933928
NGNGBはListCtrl
0934デフォルトの名無しさん
NGNG>>A,B,Cともに別のviewを表示したい
???
そんな風に3つに分割したいんでしょう?
だったらCSplitterWndでまずA, Xに分割して
さらにXをB, Cに分割すればいいんじゃ・・・?
よー分からんけど↓あたりにあなたのやりたいこと載ってないかねぇ
ttp://www7.big.or.jp/~hina/zidney/programing/sample/splitwindow/
ttp://www.kumei.ne.jp/c_lang/
0935デフォルトの名無しさん
NGNG何がやりたいかというと
上から数行と下から数行が固定で中はスクロールする
GRIDを作りたいのです。
なのでListCtrlを持つViewを3つ作って
張り合わせれば良いかと思ったのですが・・・
0936928
NGNGはい。ですので
スプリッタの幅を0にして見えないようにしたいのです
0937デフォルトの名無しさん
NGNGソース見て解析してごらん?
派生させてもいいし、いっそ全部コピってもいいかも。
0938デフォルトの名無しさん
NGNG何? よーするにA, B間の境界バー、B, C間の境界バー2つを
固定にするって事?
俺はCSplitterWndあんまり知らんから
そのバーを固定できるかどうか分からんけど
もしできないなら思いきってCDialogにすれば?
そんでCListCtrl3つ貼りつけて
そのコントロールの配置をセットすれば終わりじゃないのか?
あと、ウィンドウのサイズが変わったとき(WM_SIZE)は
上下のCListCtrlの位置を保ち真ん中のCListCtrlのサイズを調整すると
0939デフォルトの名無しさん
NGNG>何? よーするにA, B間の境界バー、B, C間の境界バー2つを固定にするって事?
そうです。かつ「非表示」にしたいのです。
固定のしかたはわかるんですが・・・
>>937
了解しました。
0940デフォルトの名無しさん
NGNGダイアログバーで実装したらどうよ?
0942デフォルトの名無しさん
NGNG>>そうです。かつ「非表示」にしたいのです。
A, B間の境界バー、B, C間の境界バー2つを非表示にしたいということか?
それならResource Viewで
CListCtrl3つ貼りつけて
それぞれプロパティ開いて
境界線の項目からチェック外して
それらをサイズ調整して重ねれば
事実上2つのバーは非表示ということになるが
0943デフォルトの名無しさん
NGNGうまくいきません。具体的にはツリーコントロールの領域をへこんだ状態に
したく、ダイアログクラスCHogeDialogのメンバであるCHogeDialog::m_zTreeに対し、
CHogeDialog::OnInitDialog()の中で
m_zTree.ModifyStyleEx( 0, WS_EX_CLIENTEDGE );
としましたが、ダイアログをリサイズして再ドローをしない限り表示が変更
されないのです。
m_zTree.ShowWindow( SW_HIDE );
m_zTree.ModifyStyleEx( 0, WS_EX_CLIENTEDGE );
m_zTree.ShowWindow( SW_SHOW );
などとしてもだめです。どなたか解決方法をご存知でしょうか。
0944デフォルトの名無しさん
NGNG>>ダイアログをリサイズして再ドローをしない限り表示が変更
>>されないのです。
m_zTree.InvalidateRect()かm_zTree.UpdateWindow()じゃだめなのか?
0945デフォルトの名無しさん
NGNGウィンドウの再描画はInvalidateRect
全体を更新するなら
m_zTree.Invalidate();
矩形領域だけを更新するなら
m_zTree.InvalidateRect(&rect);
詳細はMSDN見なさいな
0946デフォルトの名無しさん
NGNGスプリッターウィンドウみたいなのではなく、重ねて描きたいのですが…
0947デフォルトの名無しさん
NGNG直感的に無理と見た。
0948デフォルトの名無しさん
NGNG0950デフォルトの名無しさん
NGNG0951デフォルトの名無しさん
NGNGある拡張子に対してアプリケーションを関連付けるのは
レジストリ設定でできますが、任意のアイコンを割り付けるには
どうしたらよいのでしょうか?
ご教授ください、よろしくお願いします。
0952デフォルトの名無しさん
NGNG今までずっと疑問に思っていたのですが、1ピクセルを描画する関数は無いんでしょうか?
0953デフォルトの名無しさん
NGNG念のため通報しました。
0954943 MFCプログラミング歴2ヶ月厨
NGNG>>945
どもです。Invalidate()は既に試していましたがだめでした。
UpdateWindow()というのも今回トライしてみましたがだめです。
OninitDialog()の中で行っているのですがタイミングが悪いのでしょうか。
事情があってMFCのダイアログリソースを使えないためOnInitDialog
内でm_zTree.Create()を呼んでいます。
ダイアログが最初に表示されるまでに行ってもだめなら、表示された
直後に呼び出されるコールバック関数か何かありますでしょうか。
0955デフォルトの名無しさん
NGNGウホッ!いい男・・・
m_zTree.Create(・・・);
m_zTree.ModifyStyleEx( 0, WS_EX_CLIENTEDGE,SWP_DRAWFRAME );
0956943
NGNGおおおーー!
できました。ありがとうございました!!
0957デフォルトの名無しさん
NGNG0958大亮 ◆TRIPPERJCo
NGNG2ちゃんねるっぽい、2ちゃんねるに似た、2ちゃんねるのようなの作りましたー
板がいろいろあります、、、過疎板も。。
http://zeta.ns.tc/
どうかな?
いいかな?
0959957
NGNGあると便利な関数だと思うんだけど。
0960デフォルトの名無しさん
NGNGSetPixel ?
0961957
NGNGそう!それを知りたかったです。
ありがと
0962デフォルトの名無しさん
NGNGある拡張子に対してアプリケーションを関連付けるのは
レジストリ設定でできますが、任意のアイコンを割り付けるには
どうしたらよいのでしょうか?
ご教授ください、よろしくお願いします。
0963デフォルトの名無しさん
NGNGマルチUzeeeeeeeeeeee!!!!!!!!!!!!!!!!!11111111111111111
0964デフォルトの名無しさん
NGNG正直言って、
> ある拡張子に対してアプリケーションを関連付けるのは
> レジストリ設定でできますが、
と言ってる奴が、
> 任意のアイコンを割り付けるにはどうしたらよいのでしょうか?
なんて言うわけないと思う。
ネタとしか思えん。
0965デフォルトの名無しさん
NGNG0966デフォルトの名無しさん
NGNG・写真をとる。
・自分で見て覚える。
0967デフォルトの名無しさん
NGNG・ダビング
0968デフォルトの名無しさん
NGNG0969デフォルトの名無しさん
NGNG0970デフォルトの名無しさん
NGNG単純なお絵かきソフトを作ろうとしたとき、VB だと
フォームにピクチャボックスを貼り付ければ済みますが、同じ事を
VC でやるにはどうすればいいんでしょう。
まず CFormView を継承して(←他にボタン等を配置したいので)、
全体の枠を作ると思うんですが、VB のピクチャボックスに相当する機能を
付けるには何をすればいいんですか? そのまま「ピクチャ」を貼り付けるだけでは無理ですよね。
この場合って自分で CView を継承したクラスを作らなきゃいけないんですか?
ちょっと良く分からないのでご教授お願いします。
0971デフォルトの名無しさん
NGNGOnDrawで好きに描けば?
(OnDrawが見つからんとか寝言いうなよ)
余計なお世話かも知れんけど、お絵かきソフトで
他にボタン等を配置するんならCView+ダイアログバーとかにしたほうがいいとおもう。
0972デフォルトの名無しさん
NGNGこうやってnewしたインスタンスってどうやったらdelete出来ますか?
0973デフォルトの名無しさん
NGNGpRstAuthorsの寿命とともに、Instanceも消え去るんでないのか
0974972
NGNG0975デフォルトの名無しさん
NGNGC++のバリアントはどう記述するのか教えて下さい。
0976975
NGNGこれだとうまくいきません。
VARIANT vParam;
vParam.vt = VT_LPSTR;
vParam.pcVal = pcValue;
_ParameterPtr pPrm = __getParameterPtr(ParamName);
if (pPrm == NULL) {
pPrm = FCmd->CreateParameter(
ParamName,
adChar,
adParamInput,
iLen,
vParam);
0977975
NGNG0978VC++質問スレ無くなったのかな?
NGNG取得するとデフォルト(system,12p)のフォント取得しちゃうんだけどなんで?
0979デフォルトの名無しさん
NGNG0980デフォルトの名無しさん
NGNG・ボタンを無効化する。
・ボタンを消す。
・ボタンが押された時の動作で、FALSE なら何もしないようにする。
0981979
NGNG0982デフォルトの名無しさん
NGNGEnableWindow()
0983デフォルトの名無しさん
NGNGそれくらい自分で調べろや
ttp://msdn.microsoft.com/library/en-us/wcemfc/htm/cwnd_25.asp
0984981
NGNGありがとうございました
0985デフォルトの名無しさん
NGNG一般的にはどのようにするのがいいのでしょうか。
検索してみても、CWinAppの派生クラスにCDocumentのポインタを持つ
という方法しか見つかりませんでした。
私が思いついた方法と言えば
・AddDocTemplate() を複数呼ぶ
・CDocument::AddView() を使って何とかする
の二つでしたが、前者だと本来ならドキュメントごとに存在するリソースを
ビューごとに作ることになるので、ガイドラインから外れると思いました。
(ただMFCのサンプルで前者の方法を使ったのがあったような気がしますが…。)
後者は引数が CView* なのでビューを予め作成しておかなくてはならず、
[表示 | なんとかのビュー] で動的に作成するのには向いてないと思いました。
あまりに基本的なことで恐縮ですが、お願いします。
0986デフォルトの名無しさん
NGNGMSDN読んだかい
ttp://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vccore/html/_core_multiple_document_types.2c_.views.2c_.and_frame_windows.asp
0987デフォルトの名無しさん
NGNG// Verify the Web Browser control is valid.
LPDISPATCH lpDispApp = m_web_view1.GetApplication();
if(lpDispApp)
{
// Get the HTMLDocument interface.
LPDISPATCH lpDispDoc = m_web_view1.GetDocument();
if (lpDispDoc != NULL)
{
// Get the IOleCommandTarget interface so that we can dispatch the command.
LPOLECOMMANDTARGET lpTarget = NULL;
if (SUCCEEDED(lpDispDoc->QueryInterface(IID_IOleCommandTarget,(LPVOID*) &lpTarget)))
{
// Execute the print preview command. The control will handle the print preview GUI.
// OLECMDID_PRINTPREVIEW is defined in "docobj.h".
lpTarget->Exec(NULL, OLECMDID_PRINTPREVIEW, 0, NULL, NULL);
lpTarget->Release();
}
lpDispDoc->Release();
}
lpDispApp->Release();
}
みたいなコードで出来ますが、URLが印刷されちゃいますよね。
それを隠す方法があれば、ご教授ください
よろしくお願いします
0988985
NGNGもちろん読みましたが、>985については書いてないと思います。
そういえば書き忘れてましたが、CSplitterWnd を使うのではなくて、
複数のフレームウインドウにそれぞれ違うクラスのビューを表示する方法です。
例えばドキュメントとしてテキスト文書を持っていて、
一方のビューは横書きで、一方のビューでは縦書きで表示するような感じです。
スレがピンチですがもう一度お願いします。
0990デフォルトの名無しさん
NGNG0991985
NGNGその中で AddDocTemplate() を複数呼んでいる事を知りました。
その後は CDocument::GetFirstDocTemplatePosition() などで CDocTemplate
を取得して、CDocTemplate::OpenDocumentFile(NULL) で大体望み通りのことが出来ました。
>>990
プログラマーズガイド以下とテクニカルノートはかなり調べたつもりだったのですが、
リファレンスの方までは調べきれていませんでした。
言い訳するつもりはありませんが、ドキュメント&ビューの項目で
説明していて欲しかったと思いました。
ともあれ夜遅くにどうも有り難うございました。
0992デフォルトの名無しさん
NGNGhttp://pc2.2ch.net/test/read.cgi/tech/1047949606/
新スレ移行よろ
0993デフォルトの名無しさん
NGNG0994デフォルトの名無しさん
NGNG0995デフォルトの名無しさん
NGNG0996デフォルトの名無しさん
NGNG0997デフォルトの名無しさん
NGNG0998デフォルトの名無しさん
NGNG100かよ!
0999デフォルトの名無しさん
NGNG1000デフォルトの名無しさん
NGNG| \ダダダダダダ誰モイイネエエエアアアエエエエエエ!!!!!
|∀゚) オオオオオオオ踊ルナラアアアアア今今今今
|⊂ イイイイイ今アアアアアアノオオオ内ィィィィィアアアアアア!!!!
|
♪ Å
♪ / \ ラアアアアアンタアアアアア タアアアアンンンンンンン!!!
ヽ(゚∀゚ )ノ ラアアアアアアンンンンンタアアアアアアアアアア!!! タンンンンンン!!!
( へ) ラアアアアアアンンンタ ラアアアアアアンタアアアアアアアアア!!
く タアアアアアアアアアンンンンン!!!
♪ Å
♪ / \ ラアアアアアンタアアアアア タアアアアンンンンンンン!!!
ヽ( ゚∀゚)ノ ラアアアアアアンンンンンタアアアアアアアアアア!!! タンンンンンン!!!
(へ ) ラアアアアアアンンンタ ラアアアアアアンタアアアアアアアアア!!
> タアアアアアアアアアンンンンン!!!
アッヒャヒャヒャヒャヒャヒャヒャヒャヒャハyハヤヒャヒャヒャヒャhwyフヂャウハ
♪ Å
♪ / \ アッヒャヒャヒャヒャヒャヒャヒャヒャヒャハyハヤヒャヒャヒャヒャhwyフヂャウハ
ヽ(゚∀゚ )ノ アッヒャヒャヒャヒャヒャヒャヒャヒャヒャハyハヤヒャヒャヒャヒャhwyフヂャウハ
( ) アッヒャヒャヒャヒャヒャヒャヒャヒャヒャハyハヤヒャヒャヒャヒャhwyフヂャウハ
く ノ アッヒャヒャヒャヒャヒャヒャヒャヒャヒャハyハヤヒャヒャヒャヒャhwyフヂャウハ
10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。