フォーラムへの返信
-
投稿者投稿
-
MZPlatformユーザー会キーマスター
テーブルにはマウスモーションイベントが定義されていますので、これが発生したときにマウスカーソルの位置の行を選択する処理を呼び出すと実現できます。
準備としては、テーブルを行選択モードにしておく必要があります。実行(設定可)で実行した時にテーブル上で表示できるポップアップメニューで、テーブル>選択方法>行選択を選択してください。
次に、対象となるテーブルにマウスモーションイベントを追加し、同じテーブルのメソッドgetRowIndexByLocationY(int)を呼び出します。引数はイベント内包のY座標とします。
続いて、同じテーブルのメソッド「選択行を指定する(int,int)」を呼び出して、引数は両方ともメソッド処理結果として上記のメソッドを指定します。最後に、マウスモーションイベントの2つのメソッド起動をイベント番号指定として、30番のテーブル上でマウスポインタが移動したときとします。
以上で実現できると思いますが、想定する結果と異なる場合は再度お問い合わせください。
上記の方法で作成したサンプルアプリケーションを添付しておきます。添付ファイル:
MZPlatformユーザー会キーマスター残念ながら、MZの標準機能としてFAX送信は提供しておりません。
以前お答えしたPDFの印刷のように、お使いの環境でコマンドラインからFAX送信が実行できれば、MZからも実行することができるかもしれません。こちらの環境ではすぐに試せる状況ではありませんが、調べてみたところ、Windowsの標準FAX機能でコマンドラインからの実行ができるという情報はないようです。プリンタのように印刷実行して送信することができるようですが、送信用の情報を入力するダイアログが表示されてしまうようなので、ご希望の動作にならないかもしれません。
一方、Windowsの標準機能ではなく市販のソフトウェアやFAXサーバなどで、コマンドラインからの実行や他のプログラムからのFAX送信が可能なものがあれば実現できる可能性がありますので、必要に応じてお調べください。
MZPlatformユーザー会キーマスター最も簡単な方法としては、共有フォルダ等に画像ファイルを格納しておいて、そのパス文字列をDBに登録することが挙げられます。
最近産総研で試した方法としては、画像データを文字列に変換し、その文字列をDBに登録することが挙げられます。画像データと文字列の相互変換については、今年度の次回リリースで画像データ格納変数にメソッドが追加される予定です。この機能をお試しいただくための追加JARファイルとサンプルアプリケーションを添付しますので、必要に応じてお試しください。
サンプルには画像と文字列の相互変換までしか機能がありませんが、変換後の文字列をDBに登録して参照するところまではこちらで確認済みです。DBはMySQLで試しておりまして、DB側の型をlongtextにしました。
なお、サイズが大きい画像データの文字列をDBに登録した場合、それらが多数出力されるクエリを実行すると、当然ながら処理が重くなりますのでご注意ください。
添付ファイル:
MZPlatformユーザー会キーマスターMZの標準機能ではありませんが、対象となるMZアプリケーションが動作するWindows PCにAdobe Readerがインストールされていて、かつ標準のプリンタが設定されていれば、下記の方法で実現できる場合があります。
Adobe ReaderはWindows上でコマンドラインの起動オプションが現時点では利用可能で、それを利用します。(Adobeによる情報)
まずはお使いのPCでコマンドプロンプトから下記のコマンドで印刷が実行できることをご確認ください。> “C:\…\AcroRd32.exe” /h /t “C:\Users\…\…pdf”
なお、exeのパスやファイルのパスは環境に応じて適切な指定をお願いします。
こちらで試したWindows8.1のPCでは、exeのパスは下記となっておりました。
C:\Program Files (x86)\Adobe\Reader 11.0\Reader\AcroRd32.exe
パス名に空白が含まれている場合のために、パスは””で囲う方が良いでしょう。上記が動作した場合、[外部プログラム通信]コンポーネントで実行できると思います。
コマンドプロンプトで入力した文字列をそのまま通信先プログラムとして設定して起動します。ファイル名を状況に応じて変える場合は、[文字列格納変数]コンポーネントを用いた文字列の連結を利用します。詳細は添付ファイルをダウンロードして解凍したアプリケーションをご覧ください。
MZPlatformユーザー会キーマスターエクセルシートにつきましては,直接的な印刷には対応いたしておりません.
MZプラットフォームを用いてのエクセルシートの印刷には,
主に,Excelファイルアクセスコンポーネントと帳票コンポーネント
を使用いたします.
Excelファイルアクセスコンポーネントを用いて,
該当エクセルシートから該当データを取得して
テーブルデータを作成し,そのデータを帳票コンポーネントに
渡して印刷する形となります.
Excelファイルアクセスコンポーネントにつきましては,
サンプル (Excelファイルアクセス)を,帳票につきましては,
サンプル (帳票)等をご参照ください.MZPlatformユーザー会キーマスタータイマーは,メソッド「タイマーを起動する」を実行した際に,あらかじめ
設定した時間間隔でアクションイベントを発生し続けるコンポーネントです.
イベント発生間隔については,アプリケーションビルダー画面において
コンポーネント上でマウス右クリックで「属性情報設定…」を選択し設定します.
初回のイベント発生時刻を「InitialDelay」にミリ秒単位で指定します.
また,発生間隔を「Delay」に設定します.
繰り返し発生が必要ない場合には「Repeats」をfalseに設定します.
ご質問のイベント発生を遅らせる処理を実現するには,
「InitialDelay」に遅らせる時間を指定し,一度だけイベントを発生し
メソッドを実行するため「Repeats」をfalseに設定します.
なお,タイマーは停止しなければイベントを発生し続けますので
適切なタイミングで,メソッド「タイマーを停止する」を実行し停止するよう,
ご注意願います.MZPlatformユーザー会キーマスターアプリケーションの場所が2種類に限定されるのであれば、ファイルパスの有無を2回判定すればよいと思います。
具体的には、次のような方法が考えられます。
[ファイル]コンポーネントの”ファイル名を設定する”の引数に一つ目のファイルパス(例えば)”C:\Program Files (x86)\…”を文字列で指定して、”ファイルが存在するかどうかを取得する”を実行し、[等価演算(=)]コンポーネントで判定します。続いて、もう一つのファイルパス(例えば)”C:\Program Files\…”を指定して、同じ処理を実行します。いずれかの場所にファイルが存在する場合の処理を書くのであればこれで実現できると思います。MZPlatformユーザー会キーマスター残念ながら、日時選択ダイアログでは日付ボタンの色を自由に指定することはで
きません。近い機能としては、メソッドを用いて休日として指定した日付を赤色
の文字で表示することができます。また、日時選択ダイアログではなく日時選択パネルを用いますと、休日の文字色
を赤色以外に指定することができます。さらに、稼働日の指定とその文字色の指
定も可能で、2種類の色設定までは可能となります。こちらを用いる場合は、別
途ダイアログ等に日時選択パネルを配置することで、日時選択ダイアログと同様
の使い方が可能です。いずれの場合も、何らかの処理で休日や稼働日の日付を独自に指定する必要があります。
MZPlatformユーザー会キーマスター残念ながら、直接CAPSロックを自動解除する機能はございません。
代替案としては、パスワード等文字列の入力後のボタンを押すなどの時点で、文
字列格納変数にその文字列を設定して、toLowerCase()メソッドを呼び出すこと
で、常に小文字の英字に変換された文字列を取得することが可能です。MZPlatformユーザー会キーマスター質問する場合は、新規トピックを作成してください。
回答はそのトピックに対する返信で記入します。 -
投稿者投稿