フォーラムへの返信
-
投稿者投稿
-
ありがとうございました。
どの程度理解できたのか不安な部分はありますが、ポイント部分を追加し、現在のプロセスを大きく変えることなく納得できた形で対応できました。
ご確認ありがとうございます。
空のExcelファイルはひな形で使用しています。MZ側でBookを作成する方がスマートだとは思ったのですが、列幅を設定したいのと、数値列の書式を数値で区切りありとしたかったためです。再度添付します。
「MZ上でテーブルの行を増やすかどうか」のご質問ですが、データベースのレコード数に依存しますので、「増える」で回答します。
簡単にプロセスを説明します。
データベースには7回SQLを順次発行し、レコードの取得があれば、順次エクセルに書き込みます、これを7回繰り返します。前回添付したExcelファイルのデータ有り(出力結果.xls)の方では、テーブル表形式が3つありますが、7回のSQL発行で3回レコードが存在したことを意味します。
1回の実行でレコードが存在した場合、表のタイトル、表の列ヘッダー名、表の列ヘッダーの書式設定、表の行(文字列)、表の行(文字列)書式設定、表の行(数値列)、表の行(数値列)書式設定、表の合計列の合計、表の合計列の合計書式設定、この順に行位置を変えて値の設定と書式の設定を繰り返しています。書式設定は設定内容に応じて用意していますが全て「現在のブックにセル書式を作成して選択する」を使用しています。
分かりづらいと思いますがよろしくお願いいたします。
ご回答ありがとうございます。
質問が悪いのかもしれませんが、サンプルファイルの出力結果(Excelファイル)を見ると実現したい結果になっていない(数値に区切りがない)ので、少し簡潔に改めます。出力するExcelファイルの数値セル(数値がある列)の書式を「罫線あり区切りあり」で設定することはできますか?できる場合どのような方法がありますか?
サンプルでは「Excelファイル(テーブル全体用).xls」のA列1行のセルを複製し設定していまと思いますが、このセルの書式を区切りありに設定したファイルを使用しても結果は区切りなしとなります。
作成中のアプリでのひな形と出力結果のExcelファイルを添付します。出力結果のファイルのF,G,H列に対して区切りありの設定ができませんか?
ご連絡ありがとうございます。
確認ダイアログコンポーネントに「transferFocusUpCycle()」メソッドが全メソッド対象でも見当たらないのですが、どうしたらいいでしょうか。毎回、MySQLへの接続→SQL実行→切断です。
処理中は常に接続状態に変更することでエラーの発生はなくなりました。
ありがとうございます。ローカルのPCではエラーの発生はないのですが環境の問題でしょうか?
問題発生のプロセスの前まで再実装することができました。なので、添付ファイルのご確認は不要です。お忙しいところ申し訳ありませんでした。
基本的には部分々作成後には別ファイル名での保存を心がけていますが、無限ループに入ってしまった場合の対処方法があればご教授お願いします。さしあたって今、他に何かはありません。
ご検討いただきありがとうございます。ありがとうございます。
円グラフコンポーネントが表示する合計値と比率が、ご教授頂いた方法(手動計算でも同じ)での結果と若干合わない点が気になります。
円グラフコンポーネントの合計値は、小数点第一位を切り上げているようですが、系列側をどの様にして計算しても合いません。画面編集は全て手動配置で自動サイズ設定は入っていない状態です。
ボタンの文字切れはフォントの違いによるもののようで、わずかに幅を広げることで全て表示されます。
テキストフィールドだけが特別のようで、必要以上(文字幅に対して1.6倍)に幅を広げないと表示しきれません。
ちなみに現在時刻は、ラベルコンポーネントを使用しています、こちらは、文字幅と同様のサイズで問題なく表示されます。このラベルコンポーネントの幅と文字が表示しきらないテキストコンポーネントは同じ幅です。
テキストフィールドの幅を広げれば解決ですので、何かわかればお願いします。Dialogフォントが論理フォントなら、Raspberry版では何の物理フォントに何処でマッピングされているのでしょうか?
MZの実使用には問題ありませんが、ご回答頂けるとありがたいです。伊予研究会様
コメントいただきありがとうございます。シリアルモニタでの操作ではスケッチ通りになること(Serial.read()とSerial.print()の関係)は確認できておりました。当方の伝達の仕方に問題があり長引いてしまったようです。結論ですが、
シリアル通信コンポーネントの属性情報設定でReadModeを0から2に変更することで解決しました。
Serial.printとSerial.println改行の有無については今回のスケッチでは関係無いようです。『F』の文字は一度しか送っていないからだと思いますが、今後は、Serial.printlnを使用したいと思います。最後に2つ質問させてください。
➀シリアルコンポーネントの属性情報ReadModeですが、Windows版MZでは『0』『2』ともに変化はありませんでした、デフォルトは『0』ですので、Raspbian版MZでは『2』に設定し使用します。ユーザー側での知識としてなにかあればお願いします。
➁シリアル通信コンポーネントはポートへの接続時のアクションとして処理完了イベントがありますが、このイベントの最初の処理にシリアル通信コンポーネントの『ポートに文字列データを出力』メソッドを使用した場合、文字列が遅れませんでした。(このトピックの環境です)これは、WindowsでもRaspbianでも同じでした。PC等の能力や通信環境によるものと考えおけばいいものでしょか?
Raspbianでは、シリアル通信コンポーネントの処理完了イベントで、いくつかのサプルーチンコンポーネントでの処理の後にシリアル通信コンポーネントの『ポートに文字列データを出力』メソッドを使用した場合も、文字列は遅れませんでした。ダイアログコンポーネントを使用しスレッドを一旦止めることが有効のようで現在は、このようにしています。 -
投稿者投稿