1

ポップアップ メッセージ ウィンドウを試していますが、うまくいきません。プロセスを開始する前に特定のファイルが存在するかどうかをユーザーに尋ね、ファイルがまだ存在しない場合はファイルをダウンロードするようにユーザーに指示します。win32api.MessageBox / win32con.MB_YESNO 関数を使用してファイルが存在するかどうかを尋ねるメッセージ ボックスを表示し、答えが「いいえ」の場合は win32con.MB_OK を使用して別のメッセージ ボックスを表示することにしました。

スクリプトが実行され、メッセージ ボックスに yes/no ボタンが表示されますが、どちらのボタンをクリックしても何も起こりません。メッセージボックスで「いいえ」ボタンだけが機能する前に、実際にはメインスクリプトダイアログの「閉じる」ボタンをクリックする必要があります。しかし、その後、ユーザーエラーによってプロセスがキャンセルされました。

これを行う別の方法があると確信していますが、この道を歩み始めた今、私はそれを理解しようと決心しています。誰かアイデアはありますか?Google 検索結果の 7 ページにあるすべてのリンクをチェックしたと思いますが、何が間違っているのかまだわかりません。

import arcpy, win32com.client, win32api, win32con
from win32con import MB_OK, MB_YESNO

result = win32api.MessageBox(0, "Do the files exist?.", "Shapefiles", win32con.MB_YESNO);
if result == win32con.IDYES:
    pass
else:
    win32api.MessageBox(0, "Please downloaded the windswath and forecast point & lines from HURREVAC and restart the script.", "HURREVAC Shapefiles", win32con.MB_OK);

arcpy.AddMessage("did this work?")
4

0 に答える 0