ab.com コミュニティ

ActiveBasicを通したコミュニケーション
現在時刻 - 2024年4月28日(日) 14:56

全ての表示時間は UTC+09:00 です




新しいトピックを投稿する  トピックへ返信する  [ 4 件の記事 ] 
作成者 メッセージ
投稿記事Posted: 2008年5月18日(日) 23:15 
皆様こんばんは。いかがお過ごしでしょうか?
少し前に助けていただいたkoboです。
あれから試行錯誤しながらプログラムを組んでしますが
私には、理解不可能な現象に会いました。
再現率は私のパソコン上では毎回です。

qrprint(MakeStr(text)) 'hMainWndのRADにTEXTを分割して出力

SendMessage(hcwin,EM_SETSEL,0,len) '別のプログラム1エディットボックス全文字を指定
SendMessage(hcwin,WM_CUT,0,0) '指定したものをカットで消去
free(text)'メモリ開放

ShowWindow(hwin,SW_MINIMIZE) '別のプログラム1を最小化
ShowWindow(hwincm,SW_MINIMIZE) '別のプログラム2を最小化

MessageBox(hMainWnd,"ハンコを押してね。", "重要",MB_OK)
MessageBox(hMainWnd,"返却してね。","返却", MB_OK)
MessageBox(hMainWnd,"登録してね。", "とっても重要",MB_OK)

上記が、プログラムの一部、問題のある場所だと思われるのですが。
最後の方の「ハンコを押してね」のボックスが出たところで
枠が青くフォーカスが当たっている(と表現でいいのでしょうか)状態で
さらに、「はい」に点線でフォーカスが当たってもいますが、
ENTERで「はい」を押せません。
その後2個のボックスはENTERで問題なく「はい」を押せるのですが・・・・

使い勝手の問題なのですが、原因が分からないのも気持ち悪いので
なんとか解決できないかと、SetFocus(hMainWnd)なども
放り込んでみましたが、関係ないようです。

これは、何か影響されるものがあるのでしょうか。
解決策はありますでしょうか?
フォーカスが当たっている状態なので、これ以上の処理の方法が分かりません。
何卒、助け舟をお願いいたしたくお願いします。


通報する
ページトップ
   
 記事の件名: 誤魔化せました!
投稿記事Posted: 2008年5月23日(金) 22:02 
皆様こんばんはです。

なんとか自己解決?誤魔化す事ができました。
よくよく観察してみると、出現したウィンドウは濃い青色でしたが
タスクバーを見ると、その前の命令で最小化している別プログラムが
凹んでいる状態、フォーカス?が当たっている状態でした。
これに気づくのに何日掛かってるんだと突っ込みはご勘弁を。

SetFocusでも、その凹みは移動しませんでした。
なので、

ShowWindow(hMainWnd,SW_MINIMIZE) 'メインウィンドウ最小化
ShowWindow(hMainWnd,SW_RESTORE) 'メインウインドウに復元

これを突っ込んで誤魔化したら無事にENTERで「はい」が
押せました。

このタスクバーでの凹み(フォーカス?)は何で移動させることができるのか。
きっと別の命令があるんだろうなと、思いつつ組むペースを乱されるのが
嫌なのでひとまずこれで落ち着きました。
ちなみにShowWindowのSW_SHOWでも残念ながら期待通りには
動いてくれませんでした。

以上 ご報告まででした。


通報する
ページトップ
   
 記事の件名:
投稿記事Posted: 2008年5月23日(金) 23:51 
オフライン

登録日時: 2005年5月31日(火) 17:59
記事: 899
お住まい: 東京都
これでうまくいくかどうか自信がありませんが、SetActiveWindow関数またはSetForegroundWindow関数はどうでしょうか?
どちらも癖のある関数だったと思いますが、試してみる価値はあると思います。


通報する
ページトップ
投稿記事Posted: 2008年5月24日(土) 22:19 
イグトランス様 こんばんは。

ご指導いただきました命令を試してみました。
結論から申しますと残念ながらでした。
おそらく、私の知識が足りないばかりに各命令を使い切れていないのだろうと
思っています。

SetActiveWindow(hMainWnd)
ウィンドウハンドルが返ってきているので
命令の動きとしては上手くいっていると思われます。
しかしながら凹みが移らずでした。

SetForegroundWindow(hMainWnd)
こちらもTRUEが返ってきているので同様です。
タスクバー上もオレンジ色にチカチカしておりますが
最後に最小化をしたプログラムのバーが凹んだままで
hMainWndには凹みが移らず、同様に表示された
ウィンドウもEnterは受け付けてくれませんでした。

せっかくきっかけをいただけたので
もう少し頑張ってこれらの命令などを勉強してみます。
頼ってばかりだと、シナプスが欠落していくだろうなので・・・
一先ず、組みたいものは動くようになったので
ここからはじっくり腰を据えて、煮詰めていきたいと思います。
進捗ありましたらまたご報告させて頂きたいと思います。


通報する
ページトップ
   
期間内表示:  ソート  
新しいトピックを投稿する  トピックへ返信する  [ 4 件の記事 ] 

全ての表示時間は UTC+09:00 です


オンラインデータ

このフォーラムを閲覧中のユーザー: なし & ゲスト[18人]


トピック投稿:  可
返信投稿:  可
記事編集: 不可
記事削除: 不可
ファイル添付: 不可

検索:
ページ移動:  
cron
Powered by phpBB® Forum Software © phpBB Limited
Japanese translation principally by ocean