[ 掲示板に戻る ]

過去ログ閲覧モード

グーグルクロームでmouseorgを使ったバックグラウンド動作 / レイレイ
グーグルクロームでmouseorgを使ってバックグラウンド操作しようとすると、クリックするたびに対象の画面が最前面にきてしまうのですが、どうしたらよいでしょうか。
No.555 2014/12/09(Tue) 01:14:10

Re: グーグルクロームでmouseorgを使ったバックグラウンド動作 / stuncloud
Chromeはそういうもののようです
IEで代用出来るようであれば、IEを非表示で自動操作するという手もあります
どうしてもChromeでなければならないという事情があるのなら、フォアグラウンドで操作しても問題ない別環境を用意するのがベストでしょう
UWSCにこだわらないのであればChromeのDOMを操作する手段が別に存在しますので(Selenium等)、そちらを利用されることを検討してみてはいかがでしょうか

No.559 2014/12/11(Thu) 18:13:08
CHKIMG関数で、配列の要素に入っている画像を参照元にできませんか? / くまさん
参照先の画像(ウインドウ内の画像)の有無を、
500個位ある参照元の画像ファイル(画像名)と比較して検出するために、
ループで CHKIMG(GETDIR_FILES[i], サーチ範囲) としているのですが、
ひとつの参照先の画像の有無の結果が判るまでに1分ほど時間がかかってしまいます。

毎回HDDからGETDIR_FILES[i]に対応する参照元画像を読み込んでは比較している
ためにこれほど時間がかかってしまうのだと思うのですが、

この比較時間を大幅に短縮させる方法は無いでしょうか?

例えば、 画像同士の比較のループに入る前に
参照元の.bmpファイルを全て配列の中に取り込んでしまって、
(最初にメモリ上に乗せてしまって?)
その配列の要素(参照元の.bmpファイルのバイナリデータ?)と参照先の画像とを比較
することで画像の有無を検出できないものでしょうか?

もし、なにか大幅に検出速度を上げる方法をご存じの方がいらっしゃいましたら、
教えて下さい。

/////////////////////////////////////////////////////////////////////
戻値 = CHKIMG( [画像名, 透過色/色無視, x1, y1, x2, y2, 番号, 色幅] )

引数
画像名: BMP画像ファイルまでのフルパス (画像名を省略した場合はクリップボードから)
透過色/色無視:
0: 指定なし (デフォルト)
1: 左上、2:右上、3:左下、4:右下 の1ピクセルの色を透過色として処理
-1: 色を無視して形でチェックする
x1, y1, x2, y2: サーチ範囲
番号: 複数ある場合に順番を指定 (左上から)
-1: -1が指定された場合はヒットした数を戻値として返し、
座標情報は ALL_IMG_X[], ALL_IMG_Y[] に格納
(G_IMG_X、 G_IMG_Y には最後にヒットした位置が入る)
色幅: チェックに色幅を持たせる
(色無視指定時もしくは 16bitカラー以下の場合は無効)
IMG_MSK_BGR1 // 各色(BGR)に対し 2/256の色幅を許す
IMG_MSK_BGR2 // 各色(BGR)に対し 4/256の色幅を許す
IMG_MSK_BGR3 // 各色(BGR)に対し 8/256の色幅を許す
IMG_MSK_BGR4 // 各色(BGR)に対し 16/256の色幅を許す
IMG_MSK_B1, 2, 3, 4 // 青に対し 2/256, 4/256, 8/256, 16/256の色幅を許す
IMG_MSK_G1, 2, 3, 4 // 緑に対し 2/256, 4/256, 8/256, 16/256の色幅を許す
IMG_MSK_R1, 2, 3, 4 // 赤に対し 2/256, 4/256, 8/256, 16/256の色幅を許す
※ 演算可 例:IMG_MSK_B1 or IMG_MSK_R3
(青に対し 2/256の色幅を許す + 赤に対し 8/256の色幅を許す)

戻値
有ればTRUE、無ければFALSE
TRUE の場合は見つかった座標を特殊変数 G_IMG_X、 G_IMG_Y に格納
引数の番号にて -1指定時はヒットした数を返し、
座標情報は配列変数 ALL_IMG_X[], ALL_IMG_Y[] に格納

No.533 2014/12/04(Thu) 23:18:04

Re: CHKIMG関数で、配列の要素に入っている画像を参照元にできませんか? / koi
実際そこまで大量のファイルでやったことはありませんし
読み込む画像の大きさなどにもよって話が変わってくるので
あくまで案としての話になります

1.標準の関数ではどうにもならないと思うので
  APIをコールして自前で一括読み込みしておき必要に応じて対応した画像を
  クリップボードに転送するようなコードを作成する

以下あたりが参考になるかと思います
http://tokovalue.jp/SetClipboardData_U.htm

2.安直な方法として
  HDDにおいている画像をより高速アクセス可能なデバイス
  (RAMDISKやSSD等)上から読むように変更する

等が思いつきます

No.534 2014/12/05(Fri) 00:47:44

Re: CHKIMG関数で、配列の要素に入っている画像を参照元にできませんか? / くまさん
koiさん、有用な情報をいただき有難うございました。
これをヒントにして解決できましたら、
報告させていただきます。

No.536 2014/12/05(Fri) 13:05:40

Re: CHKIMG関数で、配列の要素に入っている画像を参照元にできませんか? / umiumi
CHKIMG, PEEKCOLOR関数が遅い(Vista/7/8)  #n32
http://www.uwsc.info/faq.html#n32

BMPはUWSC内部でキャッシュしているので毎回読みには行きません。

No.538 2014/12/06(Sat) 00:48:21

Re: CHKIMG関数で、配列の要素に入っている画像を参照元にできませんか? / くまさん
umiumiさん、 ご回答ありがとうございました。

MORG_BACKを追加してみましたところ、
既に持っている画像に対して、「画像をまだもっていない」となってしまいます。
(同じ大きさ、同じ間隔で 横に6個並んでいる画像の内、1〜5個の画像が無いことになっている)

バックグランドでCHKIMG()をするときは、探索範囲の座標位置が変わってしまうなど
なのでしょうか?

///////////////////////////////////////////////////////////////////////////////

FOR i = 0 TO ( LENGTH(GETDIR_FILES) - 1 )

//MOUSEORG(WM_ID)
MOUSEORG(WM_ID, MORG_BACK)

IF CHKIMG(searchDir + "\" + GETDIR_FILES[i], 0, 706, 630, 740, 663) THEN d[1] = true
IF CHKIMG(searchDir + "\" + GETDIR_FILES[i], 0, 740, 630, 774, 663) THEN d[2] = true
IF CHKIMG(searchDir + "\" + GETDIR_FILES[i], 0, 774, 630, 807, 663) THEN d[3] = true
IF CHKIMG(searchDir + "\" + GETDIR_FILES[i], 0, 807, 630, 841, 663) THEN d[4] = true
IF CHKIMG(searchDir + "\" + GETDIR_FILES[i], 0, 841, 630, 875, 663) THEN d[5] = true
IF CHKIMG(searchDir + "\" + GETDIR_FILES[i], 0, 875, 630, 909, 663) THEN d[6] = true

NEXT // CHKIMGのループ

No.544 2014/12/06(Sat) 14:15:11

Re: CHKIMG関数で、配列の要素に入っている画像を参照元にできませんか? / umiumi
基準指定を抜かしている
MOUSEORG(WM_ID, 0, MORG_BACK)

またアプリが最大化した状態の場合にはバックグランド指定時に 8ドットずれるバグを確認しています。修正予定

No.551 2014/12/07(Sun) 00:08:24

Re: CHKIMG関数で、配列の要素に入っている画像を参照元にできませんか? / くまさん
あっほんとだ
ご指摘ありがとうございました。

さっそく試しまして、効果がありました。
どうもありがとうございました。

No.552 2014/12/07(Sun) 21:53:53
セル範囲のA1形式からFORの回数を調べたい / sen
いつもお世話になっております。
各個人が入力したデータをまとめているのですが、毎回アルファベットを指で数えて、FORの回数を確認のも、情けなくなります。
スマートに数字に変換する方法はありませんでしょうか?


DIM 最終 = "C10"

Excel = GETACTIVEOLEOBJ("Excel.Application")
転記元 = XLGETDATA(Excel,"A1:" + 最終)

Excel2 = XLOPEN("C:\Users\fujii\Desktop\集計.xls")
転記先 = XLGETDATA(Excel2, "A1:" + 最終)


for 列 = 1 to 3 // ←ここ
 for 行 = 1 to length(転記元)
  ifb 転記先[行,列] = "" then
   ifb 転記元[行,列] <> "" then
    XLSETDATA(Excel2,転記元[行,列],行,列)
   endif
  endif
 next
next

No.545 2014/12/06(Sat) 18:47:59

Re: セル範囲のA1形式からFORの回数を調べたい / くまさん
列の表示をA,B,Cとするのでしたら、
列番号と列アルファベットが対応している配列を作っておいて、
その配列のキーでアルファベットを呼び出すのはどうでしょうか?
(動かしてはいないので、ちょっとコードが違うかもしれませんが)

// 列の数字をキー、要素をアルファベットとする配列
Dim numToAlpha[] = 0,dummy, 1,A, 2,B, 3,C, ..., 26,Z          // ← 追加

for 列 = 1 to 3 // ←ここ
 for 行 = 1 to length(転記元)
  ifb 転記先[行,列] = "" then
   ifb 転記元[行,列] <> "" then
    XLSETDATA(Excel2,転記元[行,列],行,列)

PRINT 行 + "行目の " + numToAlpha[列] + "列目に転記" // ← 追加

   endif
  endif
 next
next

No.546 2014/12/06(Sat) 19:47:16

Re: セル範囲のA1形式からFORの回数を調べたい / くまさん
まちがえました。。。

Dim numToAlpha[] = 0,dummy, 1,A, 2,B, 3,C, ..., 26,Z // X

Dim numToAlpha[] = dummy, A, B, ..., Z // ○

No.547 2014/12/06(Sat) 19:55:09

Re: セル範囲のA1形式からFORの回数を調べたい / stuncloud
alphabet = "C"
alphabet = strconv(alphabet, SC_UPPERCASE) //小文字は大文字にする
end = 1 + asc(alphabet) - asc("A")

for i = 1 to end
// 処理
next

No.548 2014/12/06(Sat) 20:34:24

Re: セル範囲のA1形式からFORの回数を調べたい / Liners
for 列 = 1 to Excel.Range(最終).Column // ←これとかは?
No.549 2014/12/06(Sat) 21:45:40

Re: セル範囲のA1形式からFORの回数を調べたい / sen
結構悩んでいたのですが、一瞬で3種類も教えて頂きました。

エクセルの「ブックの共有」はとても便利です。
まとめ役が集計しなくても良く、勝手にみんなが入力して完成します。しかし、順番待ちも大変で、エラーも時々起こり、ファイルが壊れる事もあります。

やはり、地道にそれぞれメールを送り入力して返信をもらい転記する。これが一番です。
しかし、時間が掛かります。まとめ役が転記をミスする可能性もあります。そのために「ブックの共有」の様な機能が発達したのだと思います。しかし、ファイルが壊れては元も子もありません。

そこで、UWSCの出番です。
ミス無く、バッチリと転記してくれます。

益々、UWSCの出番が増えそうです。
ありがとうございました。

No.550 2014/12/06(Sat) 23:34:46
UWSCのSTOPボタンが押されたら特定の処理 / 竜田
お疲れ様です。助言いただけたら幸いです。

exe化されたUWSCのスクリプトでSTOPボタンが押されたら終了前に特定の処理を行う。といったことは可能でしょうか。またはそれに近い事は可能でしょうか。

例として
a = 0
while true
a = a + 1
sleep(2)
wend
STOPボタンが押される

print a //aの中身を表示してから終了
sleep(3)
exit

STOPが押されたら。というのが重要なのでUWSCの仕様で無理であれば諦めます。

No.537 2014/12/05(Fri) 21:52:34

Re: UWSCのSTOPボタンが押されたら特定の処理 / umiumi
OPTION OPTFINALLY を指定する

OPTION OPTFINALLY
Try
 処理
Finally
 print a
EndTry

No.539 2014/12/06(Sat) 00:48:47

Re: UWSCのSTOPボタンが押されたら特定の処理 / 竜田
>>umiumi様

ありがとうございました実装できました。
例外を投げる可能性のあるものとして見れば確かにtry catchのような使い方ができますね・・。
勉強になりました。あと調べ不足でしたすみません。

No.540 2014/12/06(Sat) 01:18:36
クリップボードが占領されてしまう / ユッタカ
質問です。
SENDSTR(0, Ie.document.body.innerTEXT)
STR = GETSTR(0)
これでウェブ上の情報を引っ張ってるのですが、
ループで回すとクリップボードが占領されてしまいます。

出力先をクリップボードからメモ帳に変えてみたのですが
SENDSTR(メモ帳, IE.document.body.innerTEXT)
STR = GETSTR(メモ帳)

メモ帳だと古い情報の下にどんどん足されてしまうので
BETWEENSTRで必要な部分を切りぬこうにもうまくいきません。
クリップボードを使わずにうまくやる方法ありませんか?

No.531 2014/12/04(Thu) 19:19:29

Re: クリップボードが占領されてしまう / Liners
STR = IE.document.body.innerTEXT ではダメなの?
No.532 2014/12/04(Thu) 19:28:27

Re: クリップボードが占領されてしまう / ユッタカ
Liners様

ありがとうございます!それで問題解決しました。
最初からクリップボードを経由する必要なんてなかったんですね。
勉強になりました。

No.535 2014/12/05(Fri) 08:43:39
inprivateでブラウザを開く際の待機時間 / kjp
お世話になっております。 InPrivateでサイトを開いておりますが、
ネットワークの状況からブラウザが開くまでの待機時間がマチマチです
これをsleepの時間固定ではなく、開くまで自動で待機するみたいなことはできるのでしょうか?
URL = "htts://www.yahoo.co.jp"
id = exec("<#DBL>C:\Program Files (x86)\Internet Explorer\iexplore.exe<#DBL> -private " + URL)
ie = getactiveoleobj("InternetExplorer.Application", status(id, ST_TITLE))
sleep(1)

No.494 2014/11/27(Thu) 09:47:30

Re: inprivateでブラウザを開く際の待機時間 / むっちー
URL = "http://www.yahoo.co.jp"
id = exec("<#DBL>C:\Program Files (x86)\Internet Explorer\iexplore.exe<#DBL> -private " + URL)
ie = getactiveoleobj("InternetExplorer.Application", status(id, ST_TITLE))
busyWait(ie)

Procedure busyWait(IE)
repeat                        
sleep(0.1)                       
until !IE.busy and IE.readyState=4
FEnd

こんな感じでどうでしょうか?

No.495 2014/11/27(Thu) 12:20:51

Re: inprivateでブラウザを開く際の待機時間 / kjp
むっちーさんありがとうございます
Busy wait :しかし、多重定義です。 PROCEDURE BUSYWAIT(IE)
となってしまいます。原因わかりますか?

No.504 2014/11/28(Fri) 15:40:09

Re: inprivateでブラウザを開く際の待機時間 / koi
多重定義って出てるんですから普通に考えれば
既に同じ名前で関数(もしくは変数)が定義しているのではないですか?
スクリプト全体を再チェックしてください

No.505 2014/11/28(Fri) 17:11:46

Re: inprivateでブラウザを開く際の待機時間 / kjp
お世話になります
なんとか、待機してから、うまくブラウザは開いたのですが
ブラウザが開いたままで次のコマンドに行きません。

ちなみに、そのあとのコマンドは下記の通りです。

ID = GETID(GET_ACTIVE_WIN) // アクティブの窓をゲット
CTRLWIN( ID,MAX) // 最大化する

// IEオブジェクトの取得
ie = getactiveoleobj("InternetExplorer.Application", status(id, ST_TITLE))
IESETDATA(ie, "userID", "userID2") // タイトル書込み

No.529 2014/12/03(Wed) 16:34:42

Re: inprivateでブラウザを開く際の待機時間 / むっちー
もし、ご使用のブラウザがIE11であれば以下を参考にしてみてください
IE11にて画面更新後に操作(COM)ができない  #n45
  IE11 では一度アクティブ状態にする必要があります。
  ので画面更新の後に IEに対して WM_ACTIVATE を送り操作可能にします。
  DEF_DLL SendMessageA(Hwnd, Long, Long, Dword): bool: user32
  CONST WM_ACTIVATE = $06
  Procedure BusyWait(ie)   // 更新待ち処理
   repeat
    Sleep(0.2)
   until (! ie.busy) and (ie.readyState=4)
   SendMessageA(ie.Hwnd, WM_ACTIVATE, 0, 0) // 更新直後に WM_ACTIVATEを送る事によりバックグランドでも操作可となる
  Fend

No.530 2014/12/03(Wed) 16:59:56
関数を呼び出す関数 / フェンリル
現在、独自関数を組み合わせることで過去のプログラム資源を活用できるようにスクリプトを加工しているのですが、スレッド処理を任意の関数で行わせたいのですが、関数を呼び出せる関数が見つかりません。どなたかご存知ないでしょうか?

参考(call2を求めている関数,mineを自作関数とすると)
thread call2(mine())

procedure mine()
任意の処理
fend


といったような関数です。

No.524 2014/12/02(Tue) 14:40:08

Re: 関数を呼び出す関数 / stuncloud
call2に相当する関数内でevalして関数を実行する方法なら
http://stuncloud.wordpress.com/2013/09/11/uwsc_functional_arguments_sorta/
こんな感じで

mineに相当する関数に引数を渡す必要があるならcall2相当関数で引数も受けられるようにするといいですね

call2("mine", 1, 2, 3)

procedure call2(proc, arg1, arg2, arg3)
 eval(proc + "(arg1, arg2, arg3)")
fend

procedure mine(x, y, z)
 msgbox(x+y+z)
fend

No.525 2014/12/02(Tue) 18:37:32

Re:Re: 関数を呼び出す関数 / フェンリル
直ぐに確認できる関数で試してみたところ正常に動作しました!
助かりました。ありがとうございます。

No.528 2014/12/03(Wed) 12:37:02
ピポットテーブルの様な累計 / sen
ピポットテーブルの様な累計

売上目標と受注残がありまして、日別の目標達成率(日割りの予定額に対しての進捗率)を出したいのですが、納期の前日に上がる場合(出荷日の前日)もあれば、そうでない場合(工事の完了後)もありますし、土日の休日も変則的で、かつ工事は土日もあるので休日の前日に入れたいのです。
それはおいておいて、先ず、実際に累計を出そうとすると難しい。
日にちのみの単純な累計は出来たのですが、複数の条件だと皆目見当が付きません。
御教授いただけませんでしょうか?



hashtbl 注残
dim 計[1][1000]
id = Fopen("", F_READ or F_WRITE)
Fput(id,データ, F_ALLTEXT)
 for i = 2 to fget(id, F_LINECOUNT)
  注残[fget(id, i, 1)] = 0
 next
 for s = 2 to fget(id, F_LINECOUNT)
  for i = 0 to Length(注残)-1
   ifb 注残[i, HASH_KEY] >= fget(id, s, 1) then
    計[0][i] = 注残[i, HASH_KEY]
    IF CHKNUM(計[1][i]) = FALSE THEN 計[1][i] = 0
    計[1][i] = 計[1][i] + fget(id, s, 2)
   endif
  next
 next
 for i = 0 to Length(注残)-1
  print i+"-"+ 計[0][i] + " = " +計[1][i]
 next
fclose(id)

TEXTBLOCK データ
納期,金額
20141115,100
20141115,200
20141116,200
20141116,300
20141117,400
20141117,500
ENDTEXTBLOCK

 ↓

納期,得意先,出荷区分,金額
20141115,A社,前日,100
20141115,A社,当日,200
20141116,B社,翌日,100
20141116,B社,翌日,200

No.438 2014/11/15(Sat) 10:43:15

Re: ピポットテーブルの様な累計 / しゅん
気持ちは伝わりますが、データが不足していて、誰も回答できないと思います。

書かれているのは、納期と金額だけですが、求めるものには納期・得意先・出荷区分・金額と、情報が増えています。
また、20141117のデータが対象外となる理由の仕様明記もありません。

不足している情報を補えば、回答がもらえるかもしれませんよ!

No.442 2014/11/15(Sat) 22:22:52

Re: ピポットテーブルの様な累計 / sen
>☆ Re: ピポットテーブルの様な累計 / しゅん
>気持ちは伝わりますが、データが不足していて、誰も回答できないと思います。


文章がおかしくて済みません。
自分でも何を質問しているのか分からなくなってましたが、落ち着いて頭を整理した結果、納期と得意先でクロス累計を出したい事が判明しました。(^_^)
御教授いただけませんでしょうか?

自分で作成できた単純な累計
TEXTBLOCK データ
納期,金額
20141115,100
20141115,200
20141116,200
20141116,300
20141117,400
20141117,500
ENDTEXTBLOCK
 ↓
結果
20141115 300
20141116 800
20141117 1700

作成したい累計
TEXTBLOCK データ
納期,得意先,金額
20141115,A社,100
20141115,B社,100
20141115,C社,100
20141116,A社,200
20141116,B社,200
20141116,C社,200
20141117,A社,300
20141117,B社,300
20141117,C社,300
ENDTEXTBLOCK
 ↓
結果
得意先  A社 B社 C社 合計
20141115 100 100 100 300
20141116 300 300 300 900
20141117 600 600 600 2800

No.478 2014/11/23(Sun) 15:43:23

Re: ピポットテーブルの様な累計 / Liners
まだデータ不足で、累計なのでさらに話がややこしいですね。正直、表計算の方が楽です。
しかし、出来ないわけではないので、連想配列を使った方法の例を示します。

ただ、連想配列は一対一の対応なので、基本的には多次元化はできません。
今回はキーを工夫することで疑似的に複数扱いますが、ユニークコードであることに注意してください。

また、連想配列をインデックス用とデータ用に分けて、キーを合成[納期+社名]して複数に対応、データは
日ごとの合計までを格納して、累計は計算で求めます。


TEXTBLOCK データ
納期,得意先,金額
20141115,A社,100
20141115,B社,100
20141115,C社,100
20141116,A社,200
20141116,B社,200
20141116,C社,200
20141117,A社,300
20141117,B社,300
20141117,C社,300
ENDTEXTBLOCK

hashtbl 納期 = HASH_SORT
hashtbl 得意先

data = split(データ, "<#cr>")

for i = 1 to length(data) -1
  d = split(data[i], ",")
  k = d[0]
  t = d[1]
  n = d[2]
  納期[k] = 納期[k] + val(n)
  得意先[k + t] = 得意先[k + t] + val(n)
next

print "得意先   A社  B社  C社 合計"

k = 納期[0, hash_key]
a = 得意先[k + "A社"]
b = 得意先[k + "B社"]
c = 得意先[k + "C社"]
s = 納期[k]

for i = 0 to length(納期) -1
  if i <> 0
    k = 納期[i , hash_key]
    a = a + 得意先[k + "A社"]
    b = b + 得意先[k + "B社"]
    c = c + 得意先[k + "C社"]
    s = s + 納期[k]
  endif
  print k + format(a, 6) + format(b, 6) + format(c, 6) + format(s, 6)
next
sleep(60)

No.480 2014/11/23(Sun) 18:45:17

Re: ピポットテーブルの様な累計 / sen
有り難うございます。
見事に集計されています。
でも、難しい。(^_^)

No.520 2014/11/30(Sun) 23:15:13

Re: ピポットテーブルの様な累計 / satocha
分かりやすい書き方になったでしょうか

const 納期=0
const 得意先=1
const 金額=2
data=split(データ,"<#cr>")
dlen=length(data) - 1
dim 各項[ dlen ]
for i = 1 to dlen
  各項[ i ]=split( data[ i ], "," )
next

//納期で集計するならこんな感じ
dim sum=0
for i = 1 to dlen
  if 各項[ i ][ 納期 ] = "20141116" then sum = sum + val( 各項[ i ][ 金額 ] )
next
msgbox( "20141116の集計は" + sum )

//得意先で集計するならこんな感じ
sum=0
for i = 1 to dlen
  if 各項[ i ][ 得意先 ] = "C社" then sum = sum + val( 各項[ i ][ 金額 ] )
next
msgbox( "C社の集計は" + sum )


TEXTBLOCK データ
納期,得意先,金額
20141115,B社,100
20141115,C社,100
20141116,A社,200
20141116,B社,200
20141116,C社,200
20141117,A社,300
20141117,B社,300
20141117,C社,300
ENDTEXTBLOCK

No.527 2014/12/02(Tue) 21:57:02
JavaScriptを使ったページの操作について / rari
初めまして
uwscもJavaScriptもあまりわからない初心者なので説明がわかりにくいとおもいますがよろしくお願いします
リンクになってる部分はIESetData(IE,True,"",href=http...)でクリックできたんですが
リンクになってない文字や画像をクリックさせる方法がわかりません。
クリックするとレイアウトが少し変わります。


htmlは文字の部分は<DIV class=al>text</DIV>となっていて
画像の部分は<TH class=sort style="WIDTH: 300px">
<DIV title=ソート class=tab style="CURSOR: pointer"></DIV></TH>
CSSは#LABEL .tab{url("html.......gif")}となっています

BTN関数を使えばできるんですができるだけCOMコンポートネント利用したいです。何か方法があればアドバイスをいただければ幸いです。よろしくお願いします。

No.517 2014/11/30(Sun) 18:06:53

Re: JavaScriptを使ったページの操作について / Nagatani
まだ私のレベルではアドバイスできる立場ではありませんが
<img> で始まり </img> で終わっていれば、たぶん、
IESetData(IE,True,"TAG=IMG","*****/****.gif")
(.gifは全部入力しなくても可)だと思います。
間違ってたらごめんなさい。

No.519 2014/11/30(Sun) 21:38:39
IESetData()でメイル本文入力 / Nagatani
いつもお世話になります。Outlook系メイル送信で、ようやく完成したと思ったら
本文の入力で躓きました。

SENDSTRで抜けたもののIEによる入力で終わりたく、下記の要素の場合どのように
したらいいでしょうか?

IESETDATA(IE,"ここが本文です",","tag=body","id=owaParaStyle")で一回だけ動作
しましたが喜んだのもつかの間それ以降反応しません。気のせいだったのでしょうか?

何かアドバイスがあればよろしくお願いいたします。


◢ <html dir=ltr">
◢ <head>
◢ <style id="owaTempEditStyle">
◢ <style id="owaParaStyle" //<<==要素の検査ではここ
</style>
</head>
<body __eventHandlers="[object Object]" fPStyle="1" ocsi=">ここが本文です</BODY>
</htlm>

また、メイル送信ということでyahooメイルでも検証しましたが上記同様本文入力で躓いています。
yahooの場合

IESetData(IE,True,"tag=a","メールの作成")
BusyWait()
Sleep(2)
IESetData(IE,"*******_******@ezweb.ne.jp","to-field","")
IESetData(IE,"ここが本文です","yui_3_2_0_3_141734846008936","p")

勉強が足らないようで・・・・

No.518 2014/11/30(Sun) 21:18:49
全1170件 [ ページ : << 1 ... 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 ... 117 >> ]