HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2012
1215
ホビット教えてください8解決


ホビット

リンク

2012/12/15(Sat) 16:47:55|NO.51173

一度自分でメモ帳を作ってみようと思い
超超超単純なソースを書いて見ました
でも「error16 in line9」と出てうまくいきません
本当に笑っちゃうくらい変なソースですがどこが悪いのか教えてください<(_ _)>

あとロード機能と文字色機能をつけたいのですがどうすればいいのですか?
文字色はたぶんdialog ,32を使うと思い試したけど無理でした><


title "メモ帳" screen buf sdim a,1024 mesbox a,640,440,1 button "セーブ" ,*main stop *main notesel buf notesave "txt",buf



この記事に返信する


ホビット

リンク

2012/12/15(Sat) 16:52:23|NO.51175

すみません><訂正です

title "メモ帳" sdim a,1024 mesbox a,640,440,1 button "セーブ" ,*main stop *main notesel buf notesave "txt",buf
が書いたソースです



YSR

リンク

2012/12/15(Sat) 17:13:18|NO.51177

 なんでみんな「メモ帳程度なら手軽にできるんじゃね?」と考えてしまうものなのだろう……

 愚痴はさておき。
>どこが悪いのか
 まずはエラー内容をよく読みましょう。

#Error 16 in line 8 (???) -->パラメータの数が多すぎます
と表示されているかと思います。
ここで言う「パラメータ」とは、命令や関数に渡す情報の数のことです。
「多すぎます」なので、要するに渡しすぎなのでしょう。
じゃあいくつ渡せばいいか? 簡単です。ヘルプで調べればいいのです。
 9行目の「notesave」というところ(命令)にカーソルを合わせて、F1キーを押してください。
すると、即座に「HSP Document Library」という画面が出てきたかと思います。
そこに「notesave "filename"」とかいう記述があるかと思います。ありますよね?
これは、「notesaveは、文字列1つだけを受け取る命令です」という意味です。
 あなたの書いたコードでは、

notesave "txt",buf
となっているので、notesaveという命令に"txt"という文字列1つと、bufという変数を渡していることになります。
要するに、1つパラメータが多いのです。
「じゃあ、,bufを削ればいいの?」
まあ大体そうです……が。そこだけ修正して実行すると、保存する際に

txt
という拡張子のないテキストファイルが保存されてしまいます。
それだと「メモ帳」らしくありませんよね?
 好きなファイル名で保存したい場合は、そのファイル名を何らかの形でnotesave命令に
文字列の形で与える必要があります。一番簡単なのは、dialog命令を利用することです。
 詳しくはヘルプを読んでください、としか言えないのですが、一番簡単に書くとこうなります。

dialog "txt",17 notesave refstr
もちろん一番簡単な形なので、エラー対策は何もしていません。そこは自力で頑張って下さい。

>ロード機能と文字色機能
 ロードはnoteload命令を使えばさほど難しくはありません。好きなファイルを読みたい場合は、
やはりdialog命令を使うのが簡単です。文字色も同様にdialog命令でいいです。
 文字色のサンプルを書いてみます。

dialog "",32 if stat=0 :stop color ginfo_r,ginfo_g,ginfo_b mes "あなたが選んだ文字色は、("+ginfo_r+","+ginfo_g+","+ginfo_b+")です。" stop

 最後に。
>笑っちゃうくらい変なソース
 "変"かどうかは主観の問題であって、人にとやかく言われるようなものではないと
個人的には考えています。そりゃ"変"に感じるところを上げていけばきりがないかも
しれませんが、そんなのは自分も同じですしね。
 いろいろやって慣れていけば、昔書いたソースが酷く見えることなんてザラです。
要するに、慣れの問題なのです。気にしたら負けです。これからも頑張って下さいな。



cats

リンク

2012/12/15(Sat) 17:17:32|NO.51178

最近ホビットさんが立てたスレからして

notesave
ではなく

bsave
ではないでしょうか。



YSR

リンク

2012/12/15(Sat) 17:21:11|NO.51181

>catsさん
それだとnoteselが要らない気がする&「メモ帳」なのでテキストのみを扱う気がする
ので、notesaveだとして説明しました。



ppr

リンク

2012/12/15(Sat) 17:23:50|NO.51182


rom="あいうえおかきくけこさしすせそ\nたちつてとなにぬねのはひふへほ";保存する文字 notesel rom;メモリーにロード notesave "C:\\Users\\"+sysinfo(1)+"\\Desktop\\test.txt";保存! 今回はわかりやすくデスクトップへ保存 mes "保存!\n\n内容----\n"+rom+"";結果
notesaveを使うとこんな感じです。



ホビット

リンク

2012/12/15(Sat) 18:08:14|NO.51187

>YSRさん
ありがとうございます^^

dialog "txt",17 notesave refstr
なのですが「パラメーターの値が異常」と表示されます
refstrの代わりにいろいろと入れてみたのですがやはりエラーです・・・。
なにかヒントを教えてくれませんか?><



ppr

リンク

2012/12/15(Sat) 18:11:55|NO.51189

>>なのですが「パラメーターの値が異常」と表示されます

noteselは付けてますか??



ホビット

リンク

2012/12/15(Sat) 18:49:54|NO.51192

>>pprさんできました!!

ありがとうございます



ONION software Copyright 1997-2023(c) All rights reserved.