hinekure.net が http://hspdev-wiki.net/ から自動クローリングした結果を表示しています。画像やリソースなどのリンクが切れています。予めご了承ください。
小ワザ/basic - HSP開発wiki
トップ    編集凍結解除 差分バックアップ添付複製名前変更リロード   新規一覧単語検索最終更新   最終更新のRSS

基礎の基礎

ソース

filekiso.as
Everything is expanded.Everything is shortened.
  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
-
|
|
|
|
|
|
|
!
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
-
|
|
|
|
|
-
|
!
!
-
|
!
 
 
 
-
-
|
|
|
|
!
!
 
    buffer 1            ;ウィンドウID 1 を初期化
                    ;このウィンドウは見えません
    color 255,255,100        ;これから使用する色を黄色に設定
    boxf 0,0,100,100        ;(0,0)→(100,100)の四角を描画
    
    mo_x = 0 : mo_y = 0
 
*first
    screen 0,400,400        ;ウィンドウID 0を初期化
                    ;この命令は実際に現れます
    pos 300,300            ;これから使用する座標を(300,300)に
    gcopy 1,0,0,100,100        ;ウィンドウID 1から黄色い四角をコピー
 
    title "基礎の基礎"        ;タイトルバーに表示
 
    pos 0,300 : color 0,0,0
    boxf 0,300,100,400
 
    pos 100,100
    mes "画面をクリックすると、ボタンが消えます。"
    pos 0,250
    mes "取得した色でお絵かき"
 
    pos 0,0
    objsize 100,30            ;オブジェクト(ボタン)のサイズ
    button "マウスON",*mo_on        ;ボタン
    button "マウスOFF",*mo_off
    button "ランダム",*mo_rnd
    pos 0,150
    button "画像ロード",*load
*main
    redraw 0            ;ちらつかないように:はずしてみるとわかります。
    color 255,255,255 : boxf 200,0,400,50
    getkey key,1            ;キー取得 これはマウス左ボタンチェック
    pos 0,90
    color 255,255,255 : boxf 0,90,100,110
    font "Modern",14        ;フォント変更、サイズなどもこれです
    color 0,0,0
    mes "X"+ mo_x +"  Y"+ mo_y    ;変数を表示する場合このように書きます
    await 30            ;waitに変えてみると速度の違いがわかります。
    
    mo_x = mousex : mo_y = mousey    ;mousex→現在のx座標を取得
    onexit *owari            ;クローズボックスを押したとき*owariに飛ぶ
    onclick *kesu            ;画面をクリックすると*kesuに飛ぶ
 
    gosub *time            ;gotoと違い処理が終わると戻ってきます。
    gosub *box            ;return命令とセットで使います。
    gosub *box_2
    redraw 1            ;画面更新
    goto *main            ;指定ラベルにジャンプ
*mo_on
    mouse                ;マウスが表示されていないとき表示
    goto *main
*mo_off
    mouse -1            ;マウスを非表示
    goto *main
*mo_rnd
    randomize            ;rnd命令は通常順番に増えていくものを毎回初期化
    rnd ransu,1000            ;わからなかったら自分で実験
    mouse ransu,ransu        ;マウス座標を(ransu,ransu)に移動
    goto *main
*load
    dialog "画面を消去して表示します",2    ;ダイアログ表示これは警告(YES/NO)
    if stat=6{                ;YESの場合 statに6が返される
                        ;statはシステム変数です。
    screen 0
    dialog "bmp;*.jpg",16            ;ファイルロードダイアログ
    picload refstr,0            ;ダイアログで選択したファイルはrefstrに返されます
    exist refstr                ;ファイルサイズ取得
    font "MSゴシック"
    mes "画像サイズ:"+strsize+"byte"
    }
    stop
*owari
    dialog "糸冬 了します"
    end
*kesu
    clrobj 0,-1            ;オブジェクト消去この場合、全部消去
    goto *main
*time
    gettime h,4            ;現在の時間を変数hに代入
    gettime m,5
    gettime s,6
    pos 200,0
    font "MSゴシック"
    mes ""+h+"時間"+m+"分"+s+"秒"
    return
*box
    if (mo_x > 300) & (mo_x < 400) & (mo_y > 300) & (mo_y < 400){
    ;もし (mo_xが300よりおおきいなら)と(mo_xが400より・・・・・以下省略・・・・・・
        pos 250,240
        font "MSゴシック"
        mes "マウスが上に\n乗っています。\nクリックで色取得↓"
                        ;\nは改行
        if key=1{            ;key=1(マウスの左ボタンが押されたとき)
            pget mo_x,mo_y        ;次の座標の色を取得
        }
    }
    else{                    ;上の条件ではないなら
    color 255,255,255 : boxf 250,240,400,300
    }
    
    return
*box_2
    if (mo_x > 0) & (mo_x < 100) & (mo_y > 300) & (mo_y < 400){
        if key = 1{
            color rval,gval,bval
                ;rvalはpgetなどで取得した色(赤)gvalは緑bvalは青
            boxf mo_x,mo_y,mo_x+5,mo_y+5
                ;座標(mo_x,mo_y)→(左に+5した数字)
        }
    }
    return

こめんと

  • 無理やり感はありますが [sad2]どうでしょう? -- Charlotte 2005-07-09 18:54:33 (土)
  • これ絶対参考になりますよ!!現在内容処理中 -- u571? 2005-07-09 19:27:04 (土)
  • かなり詰め込んでますね・・・^^; -- kz3 2005-07-09 23:00:17 (土)
  • ちょっとまった。buffer 1としていますよね?ID1は使えないハズなのにこれは動きますよね?bufferはOKでscreenはNGなのかな。 -- kz3 2005-07-10 08:31:13 (日)
  • screenではNGですがbufferではOKです。 -- Charlotte 2005-07-10 15:25:04 (日)
  • おおぉ、それは初めて知りました^^ -- kz3 2005-07-10 15:27:08 (日)
  • 演算の基礎がないのがちょっとダメですね。入れれないんですよ [sad2] -- Charlotte 2005-07-10 15:29:19 (日)
  • 演算というのは四則演算ですよね?それはいいんじゃないかなぁ。 -- kz3 2005-07-10 15:33:41 (日)
  • repeatすらないし cntの使い方は入れたいなと。 -- Charlotte 2005-07-10 15:35:43 (日)
  • 詰め込みましたね〜&ran;この企画はHSPのサンプルデモの実用版みたいな感じで考えていいんでしょうか? -- GENKI? 2005-07-11 00:16:37 (月)
  • そういえばサンプルデモもこんな感じでしたね;(どうとってもらってもOKです -- Charlotte 2005-07-11 21:04:32 (月)
添付ファイル:
filekiso.as
681件 [詳細]
トップ    編集凍結解除 差分バックアップ添付複製名前変更リロード   新規一覧単語検索最終更新   最終更新のRSS
Last-modified: 2007-04-08 (日) 02:47:36 (2436d)