Jw_cad 情報交換室−その3New

 JWW についての情報交換の場としてお使いください
初心者の方などのご相談は Jw_cad 相談 室−その2をご利用ください
なお、情報交換室と相談室の両方に同じ内容を投稿するのはご遠慮ください

2009年9月以前の発言過去ログのページからご覧ください。

それ以降の過去ログは消失しています。
申し訳ありませんが、復活の予定はありません。


  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム  
29 / 1497     ←次へ | 前へ→

Re:JWK JWSファイルの使い方
 LA  - 19/8/28(水) 23:14 -
▼多呂さん:
こんにちは


以前、こんなものを作りました。
図形ファイルをエクスプローラから開くと、起動中のJWWを操作してその図形を読み込みます。
JWWが起動していない場合は、新たに起動し、その中心に図形を配置します。
動作には、UWSC (うみうみ さん作)が必要です。
https://www.vector.co.jp/download/file/winnt/util/fh688296.html
(公式サイトが閉じてしまった為、Vectorのものです)
よろしければ、どうぞ使ってやって下さい。


以下の内容をコピーして、メモ帳等のテキストエディタに貼り付け、
OpenJwks2.uws とでも名前を付けて保存して下さい。

その後、スクリプトの最後尾にあるコメントの様に、拡張子jwk,jws に関連づけを行うと、エクスプローラから、図形ファイルが開ける様になります。


//============この次行から==================
//図形ファイルを開くv2.0A (JWWv8.00d+UWSC v5.1.2にて動作確認)
//線記号変形・建具(番号を指定)にも対応 フォルダのみも可(末尾に\) 最初のページ以外には非対応
OPTION SHORTCIRCUIT //論理演算の短絡評価 (ex. A AND B で A=偽 なら、Bを評価しない)
//OPTION SAMESTR してないので大文字小文字区別なし
CONST wt=0.01 //ウェイト小
CONST dbg=0 //DebugMode 0:off 1:fukidasi 2:print
CONST jww=" - jw_win"
PUBLIC id0 //JWWのid
path=REPLACE(PARAM_STR[0],".DAT@",".DAT\")
IF RESIZE(PARAM_STR)>=1 THEN cm=PARAM_STR[1] ELSE cm="" //コメント
folder="" //Tree選択用
file="" //List選択用
mode=1 //0:新規JWW 1:ActiveなJWW
DEF_DLL PostMessageA(Hwnd,Long,Long,Dword):Bool:user32
CONST WM_COMMAND = $111
DIM optT[]="","【建具平面","【建具断面","【建具立面","【線記号変形"

//2重起動のチェック 処理が間に合わないでJWWが落ちるのを回避
id=GETID(GET_THISUWSC_WIN)
s=STATUS(id,ST_TITLE)
FOR i IN GETALLWIN()
ExitEx("ふたつ同時はだめです" ,(STATUS(i,ST_TITLE)=s AND id<>i))
NEXT

DbgPRINT("拡張子の取得")//
//線記号変形は便宜的に.op4 とし、〜\JW_OPT4.DAT\1.op4 の様な具合に記述する (建具についても同様)
IFB COPY(path,LENGTH(path))="\" THEN //フォルダTREEのみ選択の場合
xt=COPY(path,LENGTH(path)-4)
IF COPY(xt,1,1)<>"." THEN path=path + LET(xt,".jws\")
ELSE
xt=COPY(path,LENGTH(path)-3)
ENDIF

DbgPRINT("図形フォルダのチェック") //存在しないとJWWが落ちるので危険注意
f=EMPTY;optN=0
SELECT xt
CASE ".jwk" , ".jws"
ExitEx(path+"は存在しません",!FOPEN(path,F_EXISTS))
folder=COPY(path,1,POS("\",path,-1)-1)
file=COPY(path,LENGTH(folder)+2);
DbgPrint("file:"+file)
CASE ".jwk\" , ".jws\"
folder=COPY(path,1,POS("\",path,-2)-1)
ExitEx(folder+"は存在しません",!FOPEN(folder+"\",F_EXISTS))
file=""
DbgPrint("folder:"+folder)
CASE ".op4",".op4\",".op1",".op2",".op3",".op1\",".op2\",".op3\"
folder=COPY(path,1,POS("\",path,LET(i,-1,-2,LENGTH(xt)=4))-1)
optN=VAL(COPY(xt,4,1));DbgPRINT(optN,1)
DbgPrint("folder:"+folder)
ExitEx(folder+"は存在しません",LET(f,FOPEN(folder,F_READ))=-1)
s=COPY(FGET(f,1),2) //JW_OPT??.DATの1行目読込 最初の文字(#)は除外
FCLOSE(f)
opt4=COPY(folder,POS("JW_OPT",path)+7,1)
IF opt4="." THEN opt4="A"
opt4=optT[optN]+opt4+"】" + s
IFB LENGTH(xt)=4 THEN
;folder=COPY(path,1,POS("\",path,-2)) + opt4
;file=COPY(path,POS("\",path,-1)+1)
;file=COPY(file,1,LENGTH(file)-4) //拡張子を削除
ELSE //"op4\" etc
;folder=COPY(path,1,POS("\",path,-3)) + opt4
;file=""
ENDIF
DEFAULT
ExitEx(path + "は無効です")
SELEND

DbgPRINT("JWW起動中チェック")//
id0=GETID(jww,"",0)
IFB id0=-1 or STATUS(id0,ST_ICON) or mode=0 THEN //最小化対応
id0=EXEC("d:\jww\jw_win.exe")
WHILE STATUS(id0,ST_BUSY); SLEEP(wt*10);WEND //JWWが立上がるまで待つ
mode=0
ENDIF

DbgPRINT("ファイル選択dlgが開いていたら閉じる")//
id = GETID("ファイル選択", "#32770",0.01)
DbgPRINT("ID取得")
IFB id<>-1 AND STATUS(id,ST_PARENT)=id0 AND STATUS(id,ST_VISIBLE) THEN //非表示ダイアログの可能性有
DbgPRINT("ダイアログを閉じる")
ACW(id);SLEEP(wt);KBD(VK_ESC);SLEEP(wt)
ENDIF

DbgPRINT("JWWをアクティブに")
BusyWait(id0);ACW(id0)
REPEAT ;SLEEP(wt);UNTIL STATUS(id0,ST_ACTIVE)
DbgPRINT("コマンド実行")
SELECT xt
CASE ".jws",".jwk",".jws\","jwk\"
id=OpenDlgJww(id0,32862,"ファイル選択") //図形
CASE ".op4",".op4\"
id=OpenDlgJww(id0,32869,"ファイル選択") //線記号変形
CASE ".op1",".op1\"
id=OpenDlgJww(id0,32848,"ファイル選択") //建具平面
CASE ".op2",".op2\"
id=OpenDlgJww(id0,32866,"ファイル選択") //建具断面
CASE ".op3",".op3\"
id=OpenDlgJww(id0,32865,"ファイル選択") //建具立面
DEFAULT
ExitEx("コマンド不明:"+xt)
SELEND

//ここでアクティブから外れる事がある


//===次コメに続く===


引用なし

パスワード


<Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36 Sleipni...@ntngno148233.ngno.nt.ngn.ppp.infoweb.ne.jp>
・ツリー全体表示

JWK JWSファイルの使い方 多呂 19/8/28(水) 19:12
Re:JWK JWSファイルの使い方 ふゆ〜な〜 19/8/28(水) 20:02
Re:JWK JWSファイルの使い方 LA 19/8/28(水) 23:14
Re:JWK JWSファイルの使い方 多呂 19/8/29(木) 11:49
Re:JWK JWSファイルの使い方 LA 19/8/31(土) 18:44
Re:JWK JWSファイルの使い方 多呂 19/8/29(木) 11:53
Re:JWK JWSファイルの使い方 LA 19/8/28(水) 23:16
Re:JWK JWSファイルの使い方 R.N 19/8/31(土) 15:20
Re:JWK JWSファイルの使い方 R.N 19/8/31(土) 17:39
Re:JWK JWSファイルの使い方 LA 19/8/31(土) 18:24
Re:JWK JWSファイルの使い方 R.N 19/8/31(土) 19:18
Re:JWK JWSファイルの使い方 R.N 19/8/31(土) 20:24
Re:JWK JWSファイルの使い方 R.N 19/9/5(木) 21:44
Re:JWK JWSファイルの使い方 LA 19/9/5(木) 23:46
Re:JWK JWSファイルの使い方 R.N 19/9/6(金) 14:00
Re:JWK JWSファイルの使い方 Since Dos 19/8/29(木) 18:06
Re:JWK JWSファイルの使い方 多呂 19/8/30(金) 8:13
Re:JWK JWSファイルの使い方 多呂 19/8/30(金) 8:30
Re:JWK JWSファイルの使い方 Since Dos 19/8/30(金) 13:32
Re:JWK JWSファイルの使い方 多呂 19/8/30(金) 13:59
Re:JWK JWSファイルの使い方 Since Dos 19/8/30(金) 14:16
Re:JWK JWSファイルの使い方 AKIRA 19/8/31(土) 15:24
Re:JWK JWSファイルの使い方 LA 19/8/31(土) 18:33
Re:JWK JWSファイルの使い方 AKIRA 19/9/1(日) 8:43

29 / 1497     ←次へ | 前へ→
  新規投稿 ┃ツリー表示 ┃スレッド表示 ┃一覧表示 ┃トピック表示 ┃番号順表示 ┃検索 ┃設定 ┃過去ログ ┃ホーム  
 985764
ページ:  ┃  記事番号:  

C-BOARD Moyuku v1.03b3
Jw_cad Copyright (C)1997-2016 Jiro Shimizu & Yoshifumi Tanaka