約 2,907,601 件
https://w.atwiki.jp/nadebook/pages/233.html
2009-11-07 KOF 2009 日時 平成21年11月07日(土) 10 35~10 50 場所 大阪南港ATC ITM棟 6F マーレギャラリー 参加者 mrさん しらたまさん AIさん 粗茶 内容 関西オープンソース2009の会場にて、展示会場内特設ステージで15分間の発表を行いました。 言語ライクに使える、小便利ツール集としてのなでしこ 11/7 10 35~ (15 min) 講師:速島(なでしこ友の会) 主催:関西オープンフォーラム とかく「日本語」という側面のみがクローズアップされがちな、プログラミング言語「なでしこ」が持つ、もう一つの特徴、「Windowsの小便利ツール集」としての側面にスポットを当てて紹介します。 会場の様子 9 50に粗茶が会場に到着すると、発表者のmr(はやしま)さんは、すでに会場前におられました。 発表までに時間があったので、mrさんの発表内容をチェック。 うまくまとめられていたのですが、やはり15分ではなでしこの魅力を語り尽くすには足りない感じ。 そろそろ発表時間となる頃、AIさんが到着。 mrさんがステージに行ったので、粗茶とAIさんはよく見える位置に移動。 発表内容は、なでしこの実用性を強調したものでした。 なでしこ(前身のひまわりも)は、その開発動機として、誰もが簡単にプログラミングできることがあげられます。"日本語で書ける"ことと、"数行で書ける"ことにより、その目的を実現しようとし、また成功しています。 ところが、"日本語で書ける"ことがインパクトの大きさとともに、クローズアップされすぎて、「日本語だから何?」とか「日本語変換が面倒」とか「日本語が不自然」とか否定的な意見も多く、"数行で書ける"という部分が見落とされがちです。 今回のプレゼンでは、この"数行で書ける"ことによる生産性の高さをアピールすることにしました。 まず、環境設定の容易さ。 プログラミング言語を使用するための開発環境をセットアップするのに、なでしこはダウンロードして解凍するだけ、という手軽さにより、あっという間に開発作業にかかることができます。 次に、実用的な命令の豊富さ。 事例紹介したのは、「Gメール受信」命令と「パスワード付き圧縮」命令、「メール送信」命令です。 他の高級言語でも、これらの処理を行うためには、数行~数十行のプログラムを書く必要があります。しかし、なでしこならば、たったの1行で済んでしまうのです。 10行プログラミングでも証明されているように、やりたいことを、すぐに、簡単にできるのが、なでしこの大きな特徴です。 なでしこは、"日本語で書ける"ことと、"数行で書ける"ことの両方が揃ってこそ、その本領を発揮できるのです。 さて、mrさんの発表が終わり、次に正誤表共有サービスErrataの紹介が始まりました。 これは、書籍の基本情報(書名・著者名・出版社等)や版刷履歴とともに、正誤データを共有するサービスで、出版社や著者からの正誤情報が提供されなくても、読者がお互いに気づいた点を登録することで正誤情報の共有をしようとするものです。 Debug Hacksという本なのに、誤植が多いという話にはウケました。 なでしこの公式本などについて、利用できるのではないかと思いました。 気づくと、しらたまさんが来られてました。寝坊したとのことで、mrさんの発表には間に合わなかったようです。 展示会場を見て回ったのですが、毎回同じ顔ぶれですので、特に興味のあるブースはありませんでした。 ただ、ホビーロボット研究会の、ロボットが面白かったですね。なでしこからロボットを制御できれば楽しいな。 ジュンク堂書店さんが即売してましたが、クジラさんの「たのしいPHP」もさっそく並んでました。mrさんは迷わずお買い上げしてました。 さて、昼食のため4人でたこ焼き屋さんへ。 mrさんは「たこ焼き定食」を食べてましたが、私にはそんな勇気ありません。関西人として「お好み焼き定食」は常識ですが、「たこ焼き定食」はアウトだろー。 なでしこ関西の運営についていろいろと話ができて良かったです。
https://w.atwiki.jp/isoroku_be/pages/43.html
情報 作者名:はっぱ 引用元:なでしこプログラム掲示板「はっぱのサンプル集57」 概要 円に内接する多角形の頂点の座標を返す。 「多角形」命令と組み合わせて使う。 解説 引数 X:円の中心のX座標 Y:円の中心のY座標 長さ:円の半径 N:○角形 返り値 座標配列 サンプルプログラム 中心Xは110。中心Yは110。半径は100。 頂点は(中心X,中心Yから半径の7角形) 頂点と言う 塗りスタイルは『透明』 母艦の(中心X-半径),(中心Y-半径)から(中心X+半径),(中心X+半径)へ円 線色は赤色 母艦の頂点へ多角形 //本体 ●角形(X,Yから長さのN) 座標データとは配列 Aとは実数 Nの回 A=3.141592653589793*2*(回数-1)/N (ROUND(X+SIN(A)*長さ) 『,』 ROUND(Y-COS(A)*長さ))を座標データに配列追加 座標データで戻る 名前 コメント
https://w.atwiki.jp/isoroku_be/pages/24.html
情報 作者名:hihiro 引用元:なでしこプログラム掲示板「プリンタ設定」 概要 なでしこのプリンタ設定をプログラムから設定します。 解説 【プリンタ設定用変数の用紙設定】に、【セクション名】を設定 【プリンタ設定変更関数】を呼ぶ 【プリンタの設定】ダイアログが表示され、 【設定.INI】の【セクション名】に設定されているプリンタ情報に設定します 出力(戻り)項目 【プリンタ設定用変数の用紙サイズ】に変更された用紙サイズ 【プリンタ設定用変数の給紙方法】に変更された給紙方法 【プリンタ設定用変数の用紙向】に変更された用紙の向き 【設定.INI】の【セクション名】に設定されたプリンタ情報を保存します タイマーを起動して、プリンタの設定ダイアログを表示して、 タイマーの割込みでプリンタの設定をしています プリンタ名は、プリンタ切替えがうまくできないので未使用です。 本体 #以下、プリンタ設定プログラム########## ##################### # プリンタ設定ダイアログ監視タイマー # ##################### プリンタ監視タイマーとは、タイマー その値は、500 その時満ちた時は もし PRNの設定中=オフならば PRNの設定中は、オン プリンタ情報設定 PRNの設定中は、オフ PRNとは、プリンタ設定用変数 待機 ■プリンタ設定用変数 ・プリンタ名{文字列} #プリンタ設定ID=1136 ・用紙サイズ{文字列} #プリンタ設定ID=1137 ・給紙方法{文字列} #プリンタ設定ID=1138 ・用紙向{文字列} #用紙の向 縦、横 ・読込完了フラグ{整数} #プリンタ情報読込完了=オン ・設定中フラグ{整数} #プリンタ情報設定中=オン ・用紙設定{文字列} # ●プリンタ設定変更 プリンタ監視タイマーを開始 プリンタ設定 もし それ=はいならば プリンタ設定保存 ###################### #タイマーから呼び出されプリンタ設定を行う# ###################### ●プリンタ情報設定 Hとは、数値 #一時ハンドル プリンタ名Hとは、数値 #プリンタ名ハンドル ID=1136 用紙サイズHとは、数値 #用紙サイズハンドル ID=1137 給紙方法Hとは、数値 #給紙方法ハンドル ID=1138 項目一覧とは、文字列 #プリンタ設定ダイアログ項目一覧 Hは、「プリンタの設定」を窓ハンドル検索 もし H 0ならば 項目一覧は、Hの窓ハンドル内列挙 項目一覧の3から1136を表ピックアップ プリンタ名Hは、それ[0,0] #プリンタ名Hは、GetDlgItem(H,1136) 項目一覧の3から1137を表ピックアップ 用紙サイズHは、それ[0,0] #用紙サイズHは、GetDlgItem(H,1137) 項目一覧の3から1138を表ピックアップ 給紙方法Hは、それ[0,0] #給紙方法Hは、GetDlgItem(H,1138) もし PRNの読込完了フラグ=オフならば PRNの読込完了フラグは、オン プリンタ設定読込 EnableWindow(プリンタ名H,0) #プリンタ名コンボを無効 #もし PRNのプリンタ名[0,0] 「」ならば # プリンタ名HにPRNのプリンタ名[0,1]を窓ハンドル値設定 もし PRNの用紙サイズ[0,0] 「」ならば 用紙サイズHにPRNの用紙サイズ[0,1]を窓ハンドル値設定 もし PRNの給紙方法[0,0] 「」ならば 給紙方法HにPRNの給紙方法[0,1]を窓ハンドル値設定 もし PRNの用紙向=「横」ならば 項目一覧の3から1057を表ピックアップ それ[0,0]を窓ハンドルクリック 違えば 項目一覧の3から1056を表ピックアップ それ[0,0]を窓ハンドルクリック #PRNのプリンタ名は、アイテム取得(プリンタ名H) PRNの用紙サイズは、アイテム取得(用紙サイズH) PRNの給紙方法は、アイテム取得(給紙方法H) 違えば PRNの読込完了フラグは、オフ プリンタ監視タイマーを停止 #プリンタ設定項目のハンドルからアイテム名と値を ●アイテム取得(ハンドル) アイテム一覧とは、文字列 アイテム名とは、文字列 アイテム値とは、数値 アイテム一覧は、ハンドルを窓ハンドルアイテム取得 アイテム値は、ハンドルを窓ハンドル値取得 もし アイテム値 =0ならば アイテム名は、アイテム一覧\アイテム値 それは、「{アイテム名},{アイテム値}」 違えば それは、「"",{アイテム値}」 #プリンタ設定結果を保存 ●プリンタ設定保存 Hとは、数値 もし プリンタ用紙高さ>プリンタ用紙幅ならば PRNの用紙向は、「縦」 違えば PRNの用紙向は、「横」 「{母艦パス}設定.ini」のINI開く Hは、それ #Hで「{PRNの用紙設定}」の「プリンタ名」にPRNのプリンタ名をINI書く Hで「{PRNの用紙設定}」の「用紙サイズ」にPRNの用紙サイズをINI書く Hで「{PRNの用紙設定}」の「給紙方法」にPRNの給紙方法をINI書く Hで「{PRNの用紙設定}」の「用紙向」にPRNの用紙向をINI書く HのINI閉じる #プリンタ設定を読み込む ●プリンタ設定読込 Hとは、数値 「{母艦パス}設定.ini」のINI開く Hは、それ #PRNのプリンタ名は、Hで「{PRNの用紙設定}」の「プリンタ名」をINI読む PRNの用紙サイズは、Hで「{PRNの用紙設定}」の「用紙サイズ」をINI読む PRNの給紙方法は、Hで「{PRNの用紙設定}」の「給紙方法」をINI読む PRNの用紙向は、Hで「{PRNの用紙設定}」の「用紙向」をINI読む HのINI閉じる ●EnableWindow(H,B)=DLL("user32.dll", "BOOL EnableWindow(HWND hWnd,BOOL bEnable)") #プログラム ここまで###################### //サンプルプログラム !変数宣言が必要 !母艦設計=「母艦の可視はオフ」 #ここからは、動作確認用プログラム###### 母艦のサイズは、「10,10,400,300」 母艦のテキストは、「プリンタ設定動作確認プログラム」 #ボタン作成 設定1ボタンとは、ボタン その位置は、「50,10」 その幅は、200 そのクリックした時は PRNの用紙設定は、「設定1」 プリンタ設定変更 設定1ボタンのテキストは、「{PRNの用紙サイズ\0,0} {PRNの用紙向}」 設定2ボタンとは、ボタン その位置は、「50,40」 その幅は、200 そのクリックした時は PRNの用紙設定は、「設定2」 プリンタ設定変更 設定2ボタンのテキストは、「{PRNの用紙サイズ\0,0} {PRNの用紙向}」 設定3ボタンとは、ボタン その位置は、「50,70」 その幅は、200 そのクリックした時は PRNの用紙設定は、「設定3」 プリンタ設定変更 設定3ボタンのテキストは、「{PRNの用紙サイズ\0,0} {PRNの用紙向}」 母艦の可視は、オン 転載ありがとうございます。私も@wiki使い始めたところです。 -- hihiro (2008-09-27 18 15 34) こちらこそ転載させていただいてとても感謝ですー -- 管理人 (2008-09-30 21 34 32) 名前 コメント
https://w.atwiki.jp/isoroku_be/pages/23.html
情報 作者名:SIGO 引用元:なでしこ質問掲示板「Windowsを休止状態にする命令」 勝手に改変 概要 オプション付でWINDOWSを休止状態にします。 解説 引数 h:1なら休止状態に入り、0ならスリープモードに入ります。 f:1ならすぐに処理に入り、0なら各アプリに中断確認を送ってから終了します。 d:?(とりあえず0に) 返り値 なし サンプルプログラム なし //本体 ●WINDOWS休止状態(h,f,d)= DLL("PowrProf.dll","BOOLEAN SetSuspendState(BOOL Hibernate,BOOL ForceCritical,BOOL DisableWakeEvent);") 名前 コメント
https://w.atwiki.jp/chaos-online/pages/23.html
「龍造寺 撫子(なでしこ)」 キャラカード(女) / 属性:地 攻撃力:6(+1) / 耐久力:4(+0) 特殊能力: 【登場】〔自分の表のフレンドを1体控え室に置く〕 『貫通』(このスキルを持つキャラがガードされた場合、そのダメージ判定で相手のキャラの耐久力を超えたダメージを本来の目標に与えます。) レアリティ RR 作品 V.I.P. 作家 蘭宮涼 ID VIP-009
https://w.atwiki.jp/isoroku_be/pages/28.html
情報 作者名:api 引用元:なでしこプログラム掲示板「WinAPIを利用したダウンローダー」 勝手に改変 概要 タイトルの通りWinAPIを使用したダウンローダーです。 解説 引数 URL:URL(http //~) 保存先:保存先の絶対パス 返り値 なし サンプルプログラム なし //本体 ●WinAPIダウンロード(URL,保存先) URLDownloadToFile(0,URL,保存先,0,0)。 ●URLDownloadToFile({参照渡し}a,url,name,b,c) =DLL("urlmon.dll", "HANDLE URLDownloadToFileA( LPUNKNOWN pCaller, LPCTSTR szURL, LPCTSTR szFileName, DWORD dwReserved, LPBINDSTATUSCALLBACK lpfnCB )") 名前 コメント
https://w.atwiki.jp/isoroku_be/pages/35.html
情報 作者名:canot 引用元:なでしこプログラム掲示板「画像フィット関数」 概要 画像比率変えずリサイズ命令は必ず画像の長い辺にあわせてリサイズが行われるため 指定した範囲から画像がはみ出ることが有ります。 この画像フィット関数は、必ず画像を指定した範囲内でリサイズします。 完了すると拡大率が返ってきます。 解説 引数 OBJ:イメージOBJ W:幅 H:高さ 返り値 拡大率 サンプルプログラム なし //本体 ●画像フィット({グループ=?}OBJをW,Hで) Eとは実数=0.001 E1とは実数=(W/(OBJ→W)) E2とは実数=(H/(OBJ→H)) もしE1 E2ならば E=E1 違えば E=E2 OBJを(OBJ→W*E),(OBJ→H*E)で画像リサイズ Eを戻す 名前 コメント
https://w.atwiki.jp/isoroku_be/pages/161.html
情報 作者名:粗茶くん 引用元:粗茶がなでしこ本を書くぞ!「GUI/メッセージ送信」 勝手に改変 概要 エディタの文字数を制限します。 解説 引数 OBJ:エディタ A:制限文字数 サンプルプログラム エディタAとはエディタ。 エディタAを10にエディタ文字数制限。//10文字 //本体 #----------------------------------------------------------------------- !EM_LIMITTEXT=$C5。 ●エディタ文字数制限({グループ}OBJをAで|OBJをAに) OBJ→メッセージ送信(EM_LIMITTEXT,A,0)。 #----------------------------------------------------------------------- 文字数 名前 コメント
https://w.atwiki.jp/isoroku_be/pages/57.html
情報 作者名:TM 引用元:なでしこプログラム掲示板「メディアプレーヤー」 概要 マウスカーソルを変更します。 解説 引数 ファイル:?(とりあえず0に) 種類:下記参照 32512 (IDC_ARROW) 標準矢印カーソル 32513 (IDC_IBEAM) アイビーム (縦線) カーソル 32514 (IDC_WAIT) 砂時計カーソル 32515 (IDC_CROSS) 十字カーソル 32516 (IDC_UPARROW) 垂直の矢印カーソル 32640 (IDC_SIZE) 現在は使われません 32641 (IDC_ICON) 現在は使われません 32642 (IDC_SIZENWSE) 斜め右下がりの両方向矢印カーソル 32643 (IDC_SIZENESW) 斜め左下がりの両方向矢印カーソル 32644 (IDC_SIZEWE) 左右両方向矢印カーソル 32645 (IDC_SIZENS) 上下両方向矢印カーソル 32646 (IDC_SIZEALL) 4 方向矢印カーソル 32648 (IDC_NO) 禁止カーソル 32649 (IDC_HAND) Windows 98/Me/2000/XP:ハンドカーソル 32650 (IDC_APPSTARTING) 砂時計付き矢印カーソル 32651 (IDC_HELP) クエスチョンマーク付き矢印カーソル サンプルプログラム 母艦のマウス移動した時は~ (0の32649のカーソルアイコン取得)にマウスカーソル設定。 母艦のマウス押した時は~ (0の32649のカーソルアイコン取得)にマウスカーソル設定。 母艦のマウス離した時は~ (0の32649のカーソルアイコン取得)にマウスカーソル設定。 //本体 ●カーソルアイコン取得(ファイルの種類の) = DLL("user32.dll","DWORD LoadCursorA(BOOL,DWORD)") ●マウスカーソル設定(Iに) = DLL("user32.dll","DWORD SetCursor(DWORD)") 自分で作った画像をマウス画像にするにはどうすればいいですか? -- かめ (2009-08-25 20 57 31) ●カーソルファイル取得(CFileを) = DLL("user32.dll","HCURSOR LoadCursorFromFileA(PCSTR pFileName)") -- canot これでいけるはず! (2009-08-30 18 25 54) ●SetWindowClass(h,i,nl) =DLL("user32.dll", "LONG SetClassLongA(HWND hWnd,int nIndex,LONG dwNewLong)") -- canot ちらつかせたくないならウィンドウクラス書き換えで! (2009-08-30 18 30 49) ↑hにウィンドウハンドルを、iに -12 を、 nlにカーソルハンドルを渡せば「移動した時」でいちいち書き換えなくても、ウィンドウのカーソルを永続的に書き換えることができます -- canot (2009-08-30 18 32 38) ●SetWindowClass(h,i,nl) =DLL("user32.dll", "ULONG_PTR SetClassLongPtr(HWND hWnd,int nIndex,LONG_PTR dwNewLong)") -- canot 64bit版はこちらだそうです (2009-08-30 18 41 53) 名前 コメント
https://w.atwiki.jp/isoroku_be/pages/106.html
情報 作者名:Ack 引用元:なでしこ質問掲示板「なんとか出来ました」 概要 スクロールパネルをマウスホイールでスクロールできるようにします。 //サンプルプログラム //ここから SPとはスクロールパネル SPのHは200 SPのWは400 (20)回 パネル配列[回数]をパネルとして作成 パネル配列[回数]→Y = 回数*50 パネル配列[回数]→親部品はSP SPについて マウスホイール回した時は~ WM_VSCROLL = 277 SB_PAGEUP = 2 SB_PAGEDOWN = 3 //スクロールパネルには,ホイール値が代入されないみたいです もし(母艦のホイール値 0)なら メッセージ送信(WM_VSCROLL, SB_PAGEUP, 0) 違えば メッセージ送信(WM_VSCROLL, SB_PAGEDOWN, 0) 母艦のマウスホイール回した時は~ SPのマウスホイール回した時 //ここまで 名前 コメント