HAMLOG プログラム開発室


新着表示
タイトル
記事No
投稿日
投稿者

Re: JTDX の表示文字列の取得
829
2017/11/04(Sat) 12:39:52
JA9AOB 銅子
> 私も、同じようなことを考えて、WSJT_Xの画面内に表示されている文字列を別のソフトに転送したいと思いましたが、、、できませんでした。Windows用として作られたソフトなら、各エディットボックスのハンドルが分かるので、取り出せるし、書き込むことも出します。しかし、WSJT_Xはリナックスか何か良く分かりませんが、全く違ったプログラミングソフトを使っているのでしょうかね??? と言うことで、JTDXも同じく読み書きできそうにありませんね。
> 何か方法が見つかったら、お教え下さいな。
私も最近JT65からFT8モードに運用を移行しました。このため、WSJT-Xを使わざるを得なくなり何とか取り込みを検討していましたが、spy++ではハンドル等が認識出来ませんでした。やむなく、WSJT-Xの画面データをCopyして(クリップボードを経由)このデータを100msec程度の間隔で見に行く手法で取り込んでいます。取り込めれば、後は工夫次第で結構いけるかも。私の場合は、Callと認識出来るデータを含む場合のみ取り込み他は無視するようにしています。他の部分でCallをコピーペストを使用しようと思うと横取りされる不便も有りますが。
JTDXの場合も全く同じ手法でいけますよ。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: QRコード
828
2017/11/04(Sat) 10:56:35
JA2BQX 太田
JP7CZE 川辺さん,こんにちは。

QSL定義ファイルの中ではなかなか思う様には処理が出来ないので。

例えば , !cp で取り出した
RI0C/2 => RI0C_2 にする時に RI0C と 2 を取り出せたでしょうか?  VB2010上ではなくてです。 置換命令はあったかな....? !
C1 は JARL枠1文字目は全角文字ですし、コールサインの桁数も直接は取れないですし。

#Jpg 命令で !cpLeft_!cpRight 等と出来れば良いですが。

いずれにしてもレコード番号の方が簡単です。


現在はレコード番号(川辺さんがhamlog相談室にて書かれていました)でjpgを作るようにして Hamlog.hdb からレコード範囲を決めて出力テストしています。

白紙横.QSL の最後に下記の命令を追加。
#Jpg x50,y700,240,240,"D:\Thw_QRCode\jpg\!NO.jpg"

予め同じ範囲を読みだしてQRコードのjpgを出力・保存して置く。
同一範囲をQSLカード印刷時にjpgを読み込み印刷。

左下にQRコードが印刷出来ました。 イメージを添付しました。

1枚QSLに複数データには対応していません。(だいぶ面倒そうなので)

Hamlog.hdb との照合処理は自作ソフトからコピーしてきたら
まだエラーが多いので修正に苦労中。
変数名等が統一されていないので新たに、処理を書いた方が早いかも?
pagetop
タイトル
記事No
投稿日
投稿者

Re: QRコード
827
2017/11/04(Sat) 10:16:10
JP7CZE 川辺
JA2BQX 太田さん,

> QSLカードへのQRコード印刷の件、
> コールサインに / が含まれる時に / の左右の別々の項目定義名が無いので
>
> ファイル名 RI0C_17-07-25_1718U_14_CW.jpg として画像保存は無理ですね。
>
> RI0C/2 とかを表現出来ませんから。 ファイル名に / は使えないので。
> やはりレコード番号にしないといけないようです。

スラッシュの代わりにアンダースコアでも良いと思います.

RI0C_2_17-07-25_1718U_14_CW.jpg

いかがでしょうか.
受領側の処理でも,QRコードの中身に書いてあっても,
どうせならQSLカード全体をスキャンして,
その一部でQRコードをデコードし,
全体は RI0C _2_17-07-25_1718U_14_CW.jpg で保存すると,画像表示に使えるので.
フォルダをたとえば QR とQ SL とに分けたら同じファイル名でもOKか,
その場合はQSLカードスキャン側は6文字に満たないときにはスペースでパッディングします...
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

QRコード
826
2017/11/03(Fri) 18:16:13
JA2BQX 太田
QSLカードへのQRコード印刷の件、
コールサインに / が含まれる時に / の左右の別々の項目定義名が無いので

ファイル名 RI0C_17-07-25_1718U_14_CW.jpg として画像保存は無理ですね。

RI0C/2 とかを表現出来ませんから。 ファイル名に / は使えないので。
やはりレコード番号にしないといけないようです。

JT65-HF-HB9HQX-Edition ver 5.1 のソースが公開されたので
明日からは Hamlog への自動転送コードを追加するプログラムをしますので
QRコード関係は数日お休みにします。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: THW_update 後の処理
825
2017/10/14(Sat) 09:35:54
JA2BQX 太田
ありがとうございます。

> MakeIndex()を実行する必要は無いはずですよ。
> THW_update()の内部でそれに相当することをやってますので。

今、 10m FT8 で SA が開けているので後程ソースの修正をしておきます。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: THW_update 後の処理
824
2017/10/14(Sat) 07:41:42
JG1MOU浜田
> 27 = QSOデータをクローズ
> インデックスをクローズ
>
> THW_update() にて Code , Name , QTH を更新しています。
>
> MakeIndex("D:\Hamlog\Hamlog.hdb", "CODE+NAME+QTH", "D:\Hamlog\Hamlog.dx1")
> 28 = QSOデータをオープン

MakeIndex()を実行する必要は無いはずですよ。

THW_update()の内部でそれに相当することをやってますので。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: THW_update 後の処理
823
2017/10/11(Wed) 15:49:50
JA2BQX 太田
こんばんは。
お騒がせしました。

比較用バッファにコピーなどでセットする順番が間違えているのがありました。

cmmd = 27 と cmmd = 28 も使い、インデックスの再構築のMSGも出ずに
更新した内容がメインウインドウに表示されました。

ありがとうございました。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: THW_update 後の処理
822
2017/10/11(Wed) 06:46:21
JA2BQX 太田
こんにちは。

27 = QSOデータをクローズ
インデックスをクローズ

THW_update() にて Code , Name , QTH を更新しています。

MakeIndex("D:\Hamlog\Hamlog.hdb", "CODE+NAME+QTH", "D:\Hamlog\Hamlog.dx1")
28 = QSOデータをオープン

...をしましたがやはり インデックスの再構築のMSGが2回出ます。
Name と QTH の分ですね。 2回 「OK」をクリックすると
メインウインドウは更新したデータが表示されます。

インデックスの再構築のMSGを出さないようにする手立てはあるでしょうか?
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: THW_update 後の処理
821
2017/10/10(Tue) 22:12:54
JA2BQX 太田
浜田さん、こんばんは。
ありがとうございます。

> THW_update()呼び出し前に、修正前のレコードを読み出しておき、それ
> を比較用バッファにコピーします。
> 読み込んだバッファの内容のうち、修正したい構造体のフィールドに
> 修正データをコピーして、THW_update()を呼び出します。

はい、その様にしているつもりなのですが。明日また確認してみます。

> コマンド27ではいかがですか。
> 27 = QSOデータをクローズさせます。
> この間に、QSOデータの読み書きができます。
> 処理が終わったら、直ちに28を実行してください。
> 28 = QSOデータをオープンさせます。

「QSOデータをクローズさせます。」...とは実際にはどうなるのかな。
明日試しますが、メインウインドウが消える?

> でも、再描画させていないから表示は変わらないはずですね。

これを表示が変わるようにしたいのですが。
Hamlog を終了、再起動させようかとも思っています。
何秒位で終了、再起動が出来るか計測もしてみます。
処理に掛かる秒数が少なくてインデックスの再構築のMSGが出なくて
表示が変わるようならFBなのですが。

再起動すれば起動にインデックスの再構築は行われるでしょうし表示が変わるはずですね。
処理に掛かる秒数の問題か....。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop
タイトル
記事No
投稿日
投稿者

Re: THW_update 後の処理
820
2017/10/10(Tue) 21:44:17
JG1MOU浜田
> Hamlog が起動したままで転送・保存済の Hamlog.hdb の最後のレコードの中身を取得し
> code , name , qth が空白なら 文字列をセットして THW_update 処理をしています。
>
> この時に 「No15 インデックスの再構築が必要です。Hamlog.dx1 」が出ます。
> この処理を VB2010 で行うにはどうすれば良いでしょうか?

THW_update()呼び出し前に、修正前のレコードを読み出しておき、それ
を比較用バッファにコピーします。
読み込んだバッファの内容のうち、修正したい構造体のフィールドに
修正データをコピーして、THW_update()を呼び出します。

> さらに Hamlog メニューの [ 再読み込み ] をクリックすると更新内容が表示されます。
>
> この処理を VB2010 で行うにはどうすれば良いでしょうか?

コマンド27ではいかがですか。
27 = QSOデータをクローズさせます。
この間に、QSOデータの読み書きができます。
処理が終わったら、直ちに28を実行してください。
28 = QSOデータをオープンさせます。

でも、再描画させていないから表示は変わらないはずですね。
このスレッドは管理者によってロックされていますので、返信並びに編集は出来ません!
pagetop