Hatena::Groupnadesiko

雪乃☆雫のなでしこ日和

2016/11/27 (日)

いちおう完成~♪

| 18:07 | いちおう完成~♪ - 雪乃☆雫のなでしこ日和 を含むブックマーク はてなブックマーク - いちおう完成~♪ - 雪乃☆雫のなでしこ日和 いちおう完成~♪ - 雪乃☆雫のなでしこ日和 のブックマークコメント

 おかげさまで、結構ちゃんとスクリーンセーバーらしく出来ました☆

 プレビュー画面は、特に動かす必要は無かったんだけど、折角だからちょこっとだけ動くようにしてみました。

 で、とりあえず、こんな感じ~。

#-----------------------------------------------------------------------
# プログラミング講座?.nako
#-----------------------------------------------------------------------

#-----母艦--------------------------------------------------
!母艦設計=「母艦の可視はオフ母艦のタイトルは「ぷろぐらみんぐ講座?」
母艦のクライアント幅はデスクトップW母艦のクライアント高さはデスクトップH母艦のスタイルは「枠なし」
母艦の位置は「0,0」
母艦デスクトップ色画面クリア。
#------------------------------------------------------------

#-----宣言--------------------------------------------------
# INI
設定ファイル名とは文字列=「{母艦パス}ぷろぐらみんぐ講座?.ini」

# 設定
ナデシコパスとは文字列=「{PROGRAMFILESパス}nadesiko_lang\」  #なでしこのインストールフォルダ
科白表示隔とは整数=5
シナリオ隔とは整数=科白表示隔。
設定読み込み。

# 色指定
透明色とは整数=$00FF00。肌色とは整数=$FFDDCC。帽子とは整数=$EECC77。ネクタイとは整数=$FF6666。眼鏡とは整数=$CCDDEE。
うさぎとは整数=$EEBBCC。青服とは整数=$77BBBB。赤服とは整数=$EE7777。黄服とは整数=$EEDD77。橙服とは整数=$FF9966。緑服とは整数=$66CC99。

キャラ設定とは配列
キャラ設定=「{ナデシコパス}doc\kouza\sensei.gif,0/0/{透明色},0/80/{透明色},89/0/{透明色},89/80/{透明色},75/85/{透明色},50/25/{肌色},60/50/{肌色},60/80/{青服},40/35/{眼鏡},70/35/{眼鏡}
{ナデシコパス}doc\kouza\seito.gif,0/0/{透明色},80/80/{透明色},50/40/{肌色},50/80/{赤服}
{ナデシコパス}doc\kouza\game\usagi.gif,0/0/{透明色},45/45/{肌色},45/80/{うさぎ},50/30/{うさぎ},15/20/{うさぎ},80/20/{うさぎ}
{ナデシコパス}doc\kouza\game\ufo.gif,0/0/{透明色},50/40/{肌色},50/80/{黄服}
{ナデシコパス}doc\kouza\stereotype\jousi.gif,0/0/{透明色},89/0/{透明色},10/30/{肌色},40/30/{肌色},77/32/{肌色},40/65/{ネクタイ},40/80/{ネクタイ},30/80/{青服},50/80/{青服}
{ナデシコパス}doc\kouza\stereotype\buka.gif,0/0/{透明色},50/40/{肌色},50/80/{橙服}
{ナデシコパス}doc\kouza\gui\toolman.gif,0/0/{透明色},50/20/{帽子},50/40/{肌色},50/80/{緑服}」をCSV取得。

# 検索項目
追加検索項目とは配列=「class="code"{~}class="menuG"{~}.gif"{~}.png"」
キャラ名とは配列。
キャラ設定で反復。
 キャラ名に(それ¥0のファイル列挙し、「.」まで切り取ったもの)を配列追加追加検索項目で反復
  キャラ名にそれ配列追加。

# シナリオ
マニュアルとは配列=「{ナデシコパス}doc\kouza\*.htm」の全ファイル列挙。
シナリオとは配列。シナリオ行数とは整数。
HTMLとは配列。HTML行数とは整数。
Dとは整数。

# マスコット
キャラNoとは整数。
mxとは整数デスクトップW/2-115。
myとは整数デスクトップH/2-100。

# 吹き出し
吹出方向とは文字列。
fxとは整数。fyとは整数。
minWとは整数=150。minHとは整数=100。   #吹出し最小幅と高さ。
cxとは整数。cyとは整数。
#-----------------------------------------------------------

#-----GUI------------------------------------------------
#---コンフィグ画面用-----
ラベル1とはラベルの可視はオフ。
Eとはエディタの可視はオフフォルダ選択ボタンとはボタンの可視はオフラベル2とはラベルの可視はオフ。
Bとはバーの可視はオフバージョンボタンとはボタンの可視はオフ。
OKボタンとはボタンの可視はオフキャンセルボタンとはボタンの可視はオフラベル3とはラベルの可視はオフ。

#---マスコット作成-----
処理用とはイメージの可視はオフ。
*キャラ作成
  キャラ設定を反復
    Cとは整数。C=回数-1
    処理用の画像はそれ¥0
    処理用を32に画像ビット数変更。
    線色は透明色。
    もし、キャラ名\C=「jousi」ならば、
      処理用の18,89へ透明色を点描画。   #上司のみ
    違えばもし、キャラ名\C=「buka」ならば、
      処理用の32,87から58,87へ。    #部下のみ
    対象反復。
      色指定とは配列。色指定=それを「/」で区切ったもの。
      x=色指定\0。y=色指定\1。指定色=色指定\2
      処理用のx,yを指定色で塗る。
    マスコット[C]をフォームとして作成。
    マスコット[C]→スタイルは「枠なし」。
    マスコット[C]→画像は「処理用」。
    マスコット[C]→画像通り変形。
    マスコット[C]→ポケットは指定色。  #ふきだしの色になる。
    マスコット[C]→ドラッグ移動オフ。
    マスコット[C]→タイトルは「マスコット{C}」  #最前面にするのに必要。
    マスコット[C]→ダブルクリックした時は~終了。

  #---吹き出し作成-----
  2
    C=回数-1
    吹出[C]をフォームとして作成。
    吹出[C]→ドラッグ移動オフ
    吹出[C]→タイトルは「吹出{C}」。
  
  #---コード表示用-----
  コードをフォームとして作成。
  コードのスタイルは「枠なし」。
  コードのタイトルは「コード」。
  コードのドラッグ移動オフ。
#-----------------------------------------------------------

//設定画面開く
//メイン
#-----メイン------------------------------------------------
*メイン
  キャラ作成
  母艦最前面。
  母艦の可視はオン。
  乱数初期化。
  メインループ。

*メインループ
  ファイル名はマニュアル¥(マニュアルの要素数乱数)
  シナリオ作成。
  マスコット表示
  シナリオ解析
  (シナリオ隔*10)
    0.1秒待つ。
  メインループ。
#-----------------------------------------------------------

#-----シナリオ作成------------------------------------------
#マニュアルのHTMLから無理矢理系で科白を取得。
*シナリオ作成
  シナリオ=。D=0。
  HTMLにファイル名を開く。HTML=HTMLの「,」を「/;/」へ置換。
  HTMLからキャラ名の画像検索。
  シナリオの要素数
    シナリオ行数=(回数-1)-D。
    もし、シナリオ¥シナリオ行数,0=「code」ならば、
      HTML行数=シナリオ\シナリオ行数,1。
    違えば、
      HTML行数=(シナリオ\シナリオ行数,1)+1。
    シナリオ\シナリオ行数,1=。
    HTMLのHTML行数から科白抜き出し。
#-----------------------------------------------------------
*画像検索({参照渡し 配列=?}HTMLからキャラの)
  C1とは整数。C2とは整数。C3とは整数。C3=0
  HTML要素数
    C1=回数-1
    キャラで反復。
      C2=回数-1。
      HTML\C1で0から対象文字検索。
      もしそれが0でなければ、
        もし対象=「class="code"」ならば、シナリオ\C3,0=「code」。
        違えばもし対象=「class="menuG"」ならば、
          シナリオ\C3,0=「code」。HTML\(C1-1)に「」を追加。
        違えばもし対象=「.gif"」または対象=「.png"」でなければ、
          シナリオ\C3,0=C2。HTML\C1=HTML\C1の「.gif」を「」に置換。
        違えば、シナリオ\C3,0=「@」。
        シナリオ\C3,1=C1。   #HTML行数。
        C3=C3+1。

*科白抜き出し({参照渡し 配列=?}HTMLの{参照渡し 整数=?}行数から)
  一時とは文字列。一時=HTML\(行数)を空白除去。
  一時をシナリオ\シナリオ行数,1に追加。
  シナリオ\シナリオ行数,1=シナリオ\シナリオ行数,1の「
」を『/~/』へ置換。   もし、シナリオ\シナリオ行数,0=「code」でなければ、  # キャラ画像の横にコードがある場合     一時で0から「class="code"」を文字検索。     もしそれが0でなければ、シナリオのシナリオ行数配列削除。D=D+1。戻る。   一時で0から「/TD」を文字検索。   もしそれが0でなければ、     シナリオ\シナリオ行数,1=シナリオ\シナリオ行数,1のタグ削除。     もし、(それ=「上司」)または(それ=「部下」)または、   # キャラ画像の下に名前がある場合     (それ=「実行ボタン」)または(それ=「実行結果」)ならば、       シナリオ\シナリオ行数,1は。       HTML行数=HTML行数+1。       HTMLの(HTML行数)から科白抜き出し。戻る。   一時で0から「/TR」を文字検索。   もしそれが0でなければ、     シナリオ\シナリオ行数,1=シナリオ\シナリオ行数,1のタグ削除。       もし、(それ)または(それ=「/~/」)ならば、         シナリオのシナリオ行数配列削除。D=D+1。戻る。  #科白が無い場合   違えば、     HTML行数=HTML行数+1。     HTMLの(HTML行数)から科白抜き出し。 #----------------------------------------------------------- #-----マスコット表示---------------------------------------- *マスコット表示   シナリオの要素数     C=(回数-1)     もし、(シナリオ\C,0=「@」)または(シナリオ\C,0=「code」)でなければ、       キャラNo=シナリオ\C,0。抜ける。   マスコット[キャラNo]→位置は「{mx},{my+(100-自身→高さ)}」   もし、キャラNo=6でなければ、マスコット[キャラNo+1]→位置は「{mx+130},{my+(100-自身→高さ)}」   マスコット浮上。 *マスコット浮上   マスコット[キャラNo]→可視はオン。   「マスコット{キャラNo}」を窓最前面。   もし、キャラNo=6でなければ、     マスコット[キャラNo+1]→可視はオン。     「マスコット{キャラNo+1}」を窓最前面。 #----------------------------------------------------------- #-----科白表示---------------------------------------------- *シナリオ解析   Cとは整数。C=0。科白=   シナリオで反復     Noは対象¥0     科白は対象¥1の「/;/」を「,」へ置換したもの。     科白は科白を「/~/」で区切ったもの。     もし、No=「code」ならば、       科白は100で行揃え。       コード表示。吹出[0]→可視はオフ。吹出[1]→可視はオフ。     違えばもし、No%2=0ならば、       吹出方向=「左上」。塗り色=マスコット[No]→ポケット       科白は科白を46で行揃え。       0の吹出表示。吹出[1]→可視はオフ。コードの可視はオフ。     違えばもし、No%2=1ならば、       吹出方向=「右上」。塗り色=マスコット[No]→ポケット       科白は科白を46で行揃え。       1の吹出表示。吹出[0]→可視はオフ。コードの可視はオフ。     違えば、       吹出方向=「左上」。塗り色=マスコット[No]→ポケット       科白は科白を46で行揃え。       0の吹出表示。吹出[1]→可視はオフ。コードの可視はオフ。     科白=。C=C+1。     (科白表示隔*10)       0.1秒待つ。   マスコット[キャラNo]→可視はオフ。コードの可視はオフ。   吹出[0]→可視はオフ。吹出[1]→可視はオフ。   もし、キャラNo=6でなければ、マスコット[キャラNo+1]→可視はオフ。 #----------------------------------------------------------- #-----吹き出し---------------------------------------------- *吹出表示({整数}Noの)   吹出[No]に科白を吹出方向へminW,minHで吹出セリフ表示。   もし、No=0ならば、     fx=mx-吹出[No]→クライアント幅。     fy=my-吹出[No]→クライアント高さ。   違えば、     fx=mx+230     fy=my-吹出[No]→クライアント高さ。   もし、fy<0ならば、      # 吹き出しの上端がデスクトップからあふれる場合     もし、吹出方向=「左上」ならば、吹出方向=「左」。fx=fx-50     違えば、吹出方向=「右」。     fy=(デスクトップH-吹出[No]→クライアント高さ)/2-50。     吹出[No]に科白を吹出方向へminW,minHで吹出セリフ表示。   吹出[No]→位置は「{fx},{fy}」   吹出[No]→ドラッグ移動オフ。   吹出[No]→可視はオン。   「吹出{No}」を窓最前面。   マスコット浮上。 *コード表示   コードの可視はオフ。   Aとは文字列=。Bとは文字列=。   科白で反復     Bはそれ。     もし(Aの文字数)<(Bの文字数)ならば、A=B。   コードの幅=Aの文字幅取得+40*2。   コードの高さ=(科白の文字高さ取得)*(科白の要素数)+10*2   cx=(デスクトップW-コードの幅)/2   cy=デスクトップH/2+5。   コードを$009900で画面クリア。   塗り色は$FFFFCC。線色は$009900。線太さは2。   コードの2,2から(コードの幅-1),(コードの高さ-1)へ四角。   コードの可視はオン。   コードの位置は「{cx},{cy}」   コードの10,10へ科白を文字表示。   「コード」を窓最前面。   マスコット浮上。 #----------------------------------------------------------- #----------------------------------------------------------------------- ●吹出セリフ表示({グループ=?}FにSを{整数=100}minW,{整数=50}minHで{文字列=「」}方向へ)   Aとは文字列=「」。Bとは文字列=「」。   Sで反復     Bはそれ。     もし(Aの文字数)<(Bの文字数)ならば、A=B。   swとは整数=Aの文字幅取得shとは整数=(Sの文字高さ取得)*(Sの要素数)   fwとは整数=(Aの文字幅取得)*1.5。fhとは整数=(Sの文字高さ取得)*(Sの要素数)*1.8   もしfw<minWならば、fw=minW。</pp>   もし、fh<minHならば、fh=minH。</pp>   sxとは整数fw/2-sw/2-10   syとは整数=fh/2-sh/2   もし、方向=ならば、方向=F→ポケット。   もし、方向=ならば、方向=左上。   もし、方向=右ならば、sx=sx+fw/10  #矢印の長さ分   もし、方向=下ならば、sy=sy+fh/10   Fをfw,fhで方向へ吹出作成。   Fのsx,syへSを文字表示。 #----------------------------------------------------------- ●吹出作成({グループ=?}FをW,Hで方向へ)   xx=0。yy=0。ww=0。hh=0。   方向で条件分岐     右上ならば、  #矢印は左下       Fのポケットは「右上」       x1=0。y1=H。x2=W/8。y2=H/4*3。x3=W/4。y3=H/8*7。     右下ならば、  #矢印は左上       Fのポケットは「右下」       x1=0。y1=0。x2=W/4。y2=H/8。x3=W/8。y3=H/4。     左上ならば、  #矢印は右下(吹出し変形と同じ)       Fのポケットは「左上」       x1=W。y1=H。x2=W/4*3。y2=H/8*7。x3=W/8*7。y3=H/4*3。     左下ならば、  #矢印は右上       Fのポケットは「左下」       x1=W。y1=0。x2=W/4*3。y2=H/8。x3=W/8*7。y3=H/4。     上ならば、  #矢印は下向き       hh=H/10。Fのポケットは「上」       x1=W/2。y1=H+hh。x2=W/2-W/20。y2=H-H/100。x3=W/2+W/20。y3=H-H/100。     下ならば、  #矢印は上向き       hh=H/10。yy=hh。Fのポケットは「下」       x1=W/2。y1=0。x2=W/2-W/20。y2=hh+H/100。x3=W/2+W/20。y3=hh+H/100。     左ならば、  #矢印は右向き       ww=W/10。Fのポケットは「左」       x1=W+ww。y1=H/2。x2=W-W/100。y2=H/2-H/20。x3=W-W/100。y3=H/2+H/20。     右ならば、  #矢印は左向き       ww=W/10。xx=ww。Fのポケットは「右」       x1=0。y1=H/2。x2=ww+W/100。y2=H/2-H/20。x3=ww+W/100。y3=H/2+H/20。   Fの可視はオフ。   FのクライアントWはW+ww。FのクライアントHはH+hh。   Fを$00FF00で画面クリア。   線スタイルは透明。   Fのxx,yyからxx+W,yy+Hへ。1秒待つ。   Fの「{x1},{y1},{x2},{y2},{x3},{y3}」へ多角形。   F→画像通り変形。 //  Fの可視はオン。 #----------------------------------------------------------------------- #-----設定画面---------------------------------------------- *設定画面作成   母艦について     スタイルは「枠固定」。     タイトルは「{母艦のタイトル}の設定」     幅は300。高さは200。     オフに最小化ボタン有効変更。     オフに最大化ボタン有効変更。     閉じた時は~終わる。   母艦ウィンドウ背景色画面クリア。   母艦最前面。   ラベル1のテキストは「なでしこのインストールフォルダ:」   ラベル2のテキストは「セリフの表示隔:」   Eについて     幅は270。テキストはナデシコパス。   フォルダ選択ボタンについて     高さはEの高さ。幅は70。Xは210。Yは58     文字書体は「MS Pゴシック|9|」。テキストは「フォルダ選択」     クリックした時は~       ナデシコパスでフォルダ選択。       もしそれでなければ、Eのテキストはそれ。   Bについて     最小値は1。最大値は10。値は科白表示隔。     位置はラベル2の右側。幅は135。   ラベル3について     テキストは「短い             長い」     位置はBの下側。幅はBの幅。     文字書体は「MS Pゴシック|8|」。     文字位置は「中央」。   バージョンボタンについて     文字書体は「MS Pゴシック|10|」。     クリックした時は~       ダイアログタイトルは「ぷろぐらみんぐ講座?」       「{二重カッコ}ぷろぐらみんぐ講座?{改行} スクリーンセーバー二重カッコ閉じ}{改行}   Version 2.00{改行}{改行}   by 雪乃☆雫」と言う。   OKボタンについて     Xは130。YはバージョンボタンのY。     クリックした時は~       ナデシコパスはEのテキスト。       科白表示隔はBの値。       設定記録。       終わる。   キャンセルボタンについて     文字書体は「MS Pゴシック|10|」。     位置はOKボタンの右側。     クリックした時は~終わる。   ラベル1の可視はオンラベル2の可視はオンラベル3の可視はオン。   Eの可視はオン。Bの可視はオンフォルダ選択ボタンの可視はオン。   OKボタンの可視はオンキャンセルボタンの可視はオンバージョンボタンの可視はオン。 *設定画面開く   設定画面作成。   母艦のXは((デスクトップW)-(母艦の幅))/2   母艦のYは((デスクトップH)-(母艦の高さ))/2   母艦の可視はオン。 #----------------------------------------------------------- *設定読み込み   もし、設定ファイル名が存在するならば     設定ファイル名のINI開いて設定に代入。     設定で「スクリーンセーバーの設定」の「なでしこパス」をINI読んでナデシコパスに代入。     設定で「スクリーンセーバーの設定」の「科白表示隔」をINI読んで科白表示隔に代入。     シナリオ隔=科白表示隔。     設定のINI閉じる。   違えば、設定記録。 *設定記録   設定ファイル名のINI開いて設定に代入。   設定で「スクリーンセーバーの設定」の「なでしこパス」にナデシコパスをINI書く。   設定で「スクリーンセーバーの設定」の「科白表示隔」に科白表示隔をINI書く。   設定のINI閉じる。 #----------------------------------------------------------- #----------------------------------------------------------------------- # スクリーンセーバーの雛形.nako #----------------------------------------------------------------------- !母艦設計=「母艦の可視はオフ」 //!「ぷろぐらみんぐ講座?.nako」を取り込む。 #別ファイルにする時はコメントを外す。 #-----テスト用---------------------------------------------- //コマンドライン¥1は「/S」。 //コマンドライン言う。 #-----宣言-------------------------------------------------- OPとは文字列。        #起動オプション。 PWHとは整数。        #プレビューウィンドウのウィンドウハンドル。 Sxとは整数。Syとは整数。Swとは整数。Shとは整数。 #「スクリーン セーバーの設定」画面の位置サイズ。 Tとはタイマーの値は10。 裏画面とはイメージの可視はオフ。 初期マウスXとは整数=-1。初期マウスYとは整数=-1。 #----------------------------------------------------------- #コマンドラインで取得した起動オプションで、動作を選択。 #----------------------------------------------------------- OP=コマンドライン¥1の2文字左部分。  #起動オプション もし、OP=「/p」または、OP=「/P」ならば、              #プレビュー(ミニ画面)   PWH=コマンドライン¥2       #プレビューウィンドウのウィンドウハンドル   プレビュー。 違えばもし、OP=「/c」または、OP=「/C」ならば、コンフィグ。    #コンフィグ(設定画面) 違えばもし、OP=「/s」または、OP=「/S」ならば、フルスクリーン。  #フルスクリーン(本体) 違えば終わる。 #----------------------------------------------------------- #----------------------------------------------------------- *プレビュー   HDCとは整数=PWHのDC取得。   #「スクリーン セーバーの設定」画面内のプレビューウィンドウ(ミニ画面)の情報を取得。   PSとは配列=PWHの窓ハンドル内サイズ取得。   #描画用のイメージにプレビューウィンドウのサイズを設定。   裏画面の幅はPS¥0,2。   裏画面の高さはPS¥0,3。   #プレビューウィンドウの表示。   処理用の画像はキャラ設定¥0,0   処理用を32に画像ビット数変更。   (キャラ設定¥0)を反復。     色指定とは配列。色指定=それを「/」で区切ったもの。     x=色指定\0。y=色指定\1。指定色=色指定\2     処理用のx,yを指定色で塗る。   処理用の透明色をデスクトップ色画像色置換。   文字色白色文字書体は「MS ゴシック|10|太字」。   x=裏画面の幅。   PWHの窓ハンドル表示状態!=オフ     もし、x+(「ぷろぐらみんぐ講座?」の文字幅取得)<0ならば、       x=裏画面の幅。     裏画面をデスクトップ色画面クリア。     「ぷろぐらみんぐ講座?」を裏画面のx,0へ文字描画。     処理用を裏画面の((裏画面の幅-処理用の幅)/2),(裏画面の高さ-処理用の高さ)へ画像コピー。     (裏画面のハンドル)をHDCへ窓ハンドル画像転送。     x=x-3     0.05秒待つ。   終わる #----------------------------------------------------------- # 指定されたウィンドウのクライアント領域または画面全体を表すディスプレイデバイスコンテキストのハンドルを取得します。 # https://msdn.microsoft.com/ja-jp/library/cc428664.aspx ●DC取得(ハンドルの)=DLL("user32.dll", "HDC GetDC( HWND hWnd // ウィンドウのハンドル )") #----------------------------------------------------------- # デバイスコンテキストを解放し、他のアプリケーションからつかえるようにします。 # https://msdn.microsoft.com/ja-jp/library/cc410542.aspx ●DC解放(hWnd,hDC)=DLL("user32.dll", "int ReleaseDC( HWND hWnd, // ウィンドウのハンドル HDC hDC // デバイスコンテキストのハンドル )") #----------------------------------------------------------- # 指定されたウィンドウの表示状態を調べ、0かそれ以外を返す。 # https://msdn.microsoft.com/ja-jp/library/cc364819.aspx ●窓ハンドル表示状態(ハンドルの)=DLL("user32.dll", "BOOL IsWindowVisible( HWND hWnd // ウィンドウのハンドル )") #----------------------------------------------------------- # ビットブロック転送を行います。 # コピー元からコピー先のデバイスコンテキストへ、 # 指定された長方形内の各ピクセルの色データをコピーします。 # https://msdn.microsoft.com/ja-jp/library/cc428944.aspxBitBlt(hdcDest,nXDest,nYDest,nWidth,nHeight,hdcSrc,nXSrc,nYSrc,dwRop)=DLL("gdi32.dll", "BOOL BitBlt( HDC hdcDest, // コピー先デバイスコンテキストのハンドル int nXDest, // コピー先長方形の左上隅の x 座標 int nYDest, // コピー先長方形の左上隅の y 座標 int nWidth, // コピー先長方形の幅 int nHeight, // コピー先長方形の高さ HDC hdcSrc, // コピー元デバイスコンテキストのハンドル int nXSrc, // コピー元長方形の左上隅の x 座標 int nYSrc, // コピー元長方形の左上隅の y 座標 DWORD dwRop // ラスタオペレーションコード )") ●窓ハンドル画像転送({整数}コピー元ハンドルを{整数}コピー先ハンドルへ)   WHとは配列コピー先ハンドルの窓ハンドル内サイズ取得。   Wとは整数WH\0,2。Hとは整数WH\0,3。   BitBlt(コピー先ハンドル,0,0,W,H,コピー元ハンドル,0,0,$00CC0020) #----------------------------------------------------------- #----------------------------------------------------------- *コンフィグ   #「スクリーン セーバーの設定」画面の情報取得。   SWHとは整数=「スクリーン セーバーの設定」の窓ハンドル検索。   SSとは配列=SWHの窓ハンドル内サイズ取得。   Sw=SS¥0,2。Sh=SS¥0,3。   Sxyとは配列=SWHの0,0を窓ハンドル画面座標計算。   Sx=Sxy¥0,0。Sy=Sxy¥0,1。 //  母艦のクライアント幅はSw。 //  母艦のクライアント高さはSh。 //  母艦の位置は「{Sx},{Sy}」。 #---------------------------------------*/   設定画面作成。   母艦のXは(Sx)+((Sw)-(母艦の幅))/2   母艦のYは(Sy)+((Sh)-(母艦の高さ))/2   母艦の可視はオン #----------------------------------------------------------- #----------------------------------------------------------- *フルスクリーン   母艦について     スタイルは「枠なし」     クライアント幅はデスクトップW。     クライアント高さはデスクトップH。     位置は「{0},{0}」。     キー押した時は~終わる。     クリックした時は~終わる。     マウス移動した時は~       もし、(初期マウスX=-1)かつ(初期マウスY=-1)ならば、         初期マウスX=母艦のマウスX。初期マウスY=母艦のマウスY。       違えば、(初期マウスX=母艦のマウスX)または       (初期マウスY=母艦のマウスY)でなければ、終わる   オフにマウスカーソル表示設定。  #マウスカーソルオフ #---------------------------------------   メイン。 #----------------------------------------------------------- # マウスカーソルを消したり出したり出来る。 # 「A」= オンorオフ # なでしこライブラリ~ http://www26.atwiki.jp/isoroku_be/pages/122.html ●マウスカーソル表示設定(Aに)=DLL("user32.dll","int ShowCursor(BOOL bShow)") #-----------------------------------------------------------

 万一、試してみようとゆう奇特な方がいたらですけど、ただコピペして実行しても動きません。

 一度実行ファイルにして、拡張子をscrにリネームして、右クリックでインストールです(Win7の場合)

 

トラックバック - http://nadesiko.g.hatena.ne.jp/snowdrops89/20161127