SetWindowText()でエディットボックスに表示できない – 固定ページ 2 – プログラミング – Home

通知
すべてクリア

SetWindowText()でエディットボックスに表示できない

固定ページ 2 / 2

PATIO
(@patio)
Famed Member
結合: 4年前
投稿: 2660
 

あてずっぽですが、
(1)のパターンの時にダイアログ上に他のウインドウを重ねてからもう一度
外すと表示されているなんて言う落ちはないですよね。
だからどうしたといわれると困るんですが、
なんとなくそんな気がしたので。


返信引用
Jojy
 Jojy
(@Jojy)
ゲスト
結合: 21年前
投稿: 7
 

エディットに文字をセットした後に
何か時間のかかる処理をしていて、
OnOK関数を抜けていないのでは?
その場合、AfxMessageBoxを入れることで
WM_PAINTが処理されてエディットに表示できてるのでは?

プログラム全部載せるのがまずいなら、
現象が再現する簡易版を作って載せたほうが早いかも。


返信引用
ryo改もDゥ
 ryo改もDゥ
(@ryo改もDゥ)
ゲスト
結合: 21年前
投稿: 1
 

実際試してみたんですが・・・

ikeさんが表示できると言う方が表示できません><
表示できないほうは表示できるんですけど。


返信引用
sugar
 sugar
(@sugar)
ゲスト
結合: 24年前
投稿: 448
 

> CString m_edit1;
> CEdit m_edit;
>
これをどうやって追加したかがとても気になる・・・


返信引用
επιστημη
 επιστημη
(@επιστημη)
ゲスト
結合: 22年前
投稿: 600
 

うーん…メンバ m_edit と 実世界にあるedit-control 間
の関連がついてないんじゃないか?


返信引用
r
 r
(@r)
ゲスト
結合: 22年前
投稿: 48
 

全文公開は無理でも、CSANPLE::DoDataExchange() 関数の内容を晒せば解決の可能性は
高くなる。


返信引用
怪傑ズバット
 怪傑ズバット
(@怪傑ズバット)
ゲスト
結合: 21年前
投稿: 1
 

無駄にレス多いよね


返信引用
wood
 wood
(@wood)
ゲスト
結合: 23年前
投稿: 895
 

追加されてる場所確認
-------------------------------------------------------------
1.VIEWクラスヘッダの
class CXXXView : public CView
{
protected: // シリアライズ機能のみから作成します。
CXXXXView();
DECLARE_DYNCREATE(CXXXXView)

public:
//{{AFX_DATA(CXXXXView)
enum { IDD = IDD_XXXX_FORM };

この下あたりですか

-------------------------------------------------------------
2.VIEW.CPPの

void CXXXXView::DoDataExchange(CDataExchange* pDX)
{
CView::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSSMMNMTNView)
DDX_Control(pDX, IDC_MTITLE, m_CE_MTITLE);

DDX_Text(pDX, IDC_COPID, m_COP_ID); ←ここのようにリソースIDと
                        関連付けされているのはあります
                        か

手で追加しちゃダメだよ
-------------------------------------------------------------

あと別のボタンリソースを貼り付けてそのボタンのコーディングしてみてください

MFCの場合「OK」「CANCEL]ボタンは通常のボタンと違う動きしますから
もしかすると、そのままアプリ終わってませんか?

追加したメンバ変数は間違ってもDOCクラスじゃ無いですよね


返信引用
wood
 wood
(@wood)
ゲスト
結合: 23年前
投稿: 895
 

ごめん
途中読んでなかった
VIEWクラスは、ダイアログクラスと読み替えてください

>MFCの場合「OK」「CANCEL]ボタンは通常のボタンと違う動きしますから
>もしかすると、そのままアプリ終わってませんか?

ダイアログベースの場合は「OK」ボタン押した時点でアプリ終了してしまうのが
デフォルト動作になっているはずです

表示云々の前にアプリ終わっていると思いますがどうでしょうか?


返信引用
ike
 ike
(@ike)
ゲスト
結合: 22年前
投稿: 9
Topic starter  

このコードをステップ実行でやったんですが
このコード自体を実行して確認しただけではだめなんですね。
このあと進むと表示ができました。

m_edit.SetWindowText(あいうえお);


返信引用
RAPT
 RAPT
(@RAPT)
ゲスト
結合: 23年前
投稿: 310
 

Windowsアプリケーションのしくみについての勉強が必要のようですね。
どの時点で描写がなされるのか、について。
コンソールアプリとの違い、など。

# 「コマンド釦」って表記は一般的なのだろうか?
# σ(^^)はどうせなら「コマンドボタン」ってそのまま表記しますが。
# もしくは単に「ボタン」と。


返信引用
Hogehoge
 Hogehoge
(@Hogehoge)
ゲスト
結合: 21年前
投稿: 2
 

結局最初のソースで何も問題なかったの?
何故えに「解決」してない?

# 「コマンド釦」ってここではじめてみました。HNはikeさんじゃなかったけど


返信引用
固定ページ 2 / 2

返信する

投稿者名

投稿者メールアドレス

タイトル *

プレビュー 0リビジョン 保存しました
共有:
タイトルとURLをコピーしました