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


HSPTV!掲示板


未解決 解決 停止 削除要請

2023
0708
hiyohiyolistboxの編集2解決


hiyohiyo

リンク

2023/7/8(Sat) 11:47:37|NO.99700

初めまして。HSP初心者です。
inputボックスに入力した文字をまとめてリストボックスに表示させたいのですが、
以下のようにスクリプトを書き追加ボタンを押すと二重投稿されてしまいます。
新しい内容を追加するとまた二重になり、さらに先にあった内容が上書きされてしまいます。
つまり一度の追加(二重)しか反映されない状態になっています。
何が悪さをしているのでしょうか? また、どのように改良すればよいでしょうか?


screen 0,640,480,0 title "スケジューラー" objmode 2 font "MS ゴシック",12,0 objsize 450,300 pos 10,12 sdim list,265 list= "" listbox a,10,list objsize 150,59 pos 475,100 button "削除",*del objsize 150,59 pos 475,21 button "編集",*edit objsize 150,59 pos 475,180 button "保存",*save pos 20,361 year= gettime(0) input year,80,30 font "MS ゴシック",25,1 pos 104,362 mes "年" font "MS ゴシック",12,0 pos 135,361 month= gettime(1) input month,50,30 font "MS ゴシック",25,1 pos 195,361 mes "月" font "MS ゴシック",12,0 pos 230,361 day= gettime(3) input day,50,30 font "MS ゴシック",25,1 pos 289,361 mes "日" font "MS ゴシック",12,0 pos 82,400 sdim yotei,256 input yotei,380,30 font "MS ゴシック",25,1 pos 20,402 mes "予定" pos 339,361 mes "優先度" font "MS ゴシック",12,0 objsize 45,33 pos 422,359 yuusen=0 sdim ytext comboxtext="高\n中\n低" combox yuusen,100,comboxtext objsize 82,30 pos 20,441 button "追加",*add stop *del notesel list notedel a objprm 0, list stop *edit stop *save stop *add notesel comboxtext noteget ytext,yuusen list = "" + year + "/" + month + "/" + day +"・" + ytext + "・" + yotei notesel list noteadd list, 0, 0 objprm 0, list objprm 0, noteinfo(0) stop



この記事に返信する


沢渡

リンク

2023/7/8(Sat) 12:16:48|NO.99701

文字列変数「list」はリストボックス全体の内容を収納するものなのに、
その「list」に代入文で直接文字列を書き込んだり、
「listの内容をnoteaddでlistに追加する」などという真似をしたり
しているせいでしょう。
終わりの方の

list = "" + year + "/" + month + "/" + day +"・" + ytext + "・" + yotei notesel list noteadd list, 0, 0


temp = "" + year + "/" + month + "/" + day +"・" + ytext + "・" + yotei notesel list noteadd temp, 0, 0
としたらどうでしょう?

それと、その後の「objprm 0, noteinfo(0)」は、リストボックスの最後の項目が
選択された状態にしたいということでしょうか?
その場合ですと「objprm 0, noteinfo(0)-1」とした方が良いでしょう。



hiyohiyo

リンク

2023/7/8(Sat) 13:47:41|NO.99702

>沢渡様
ありがとうございます。
ご指摘通り、設定したlist変数の使い方がよくわかっていなかったのが原因でした。
書き込んでいただいたスクリプトで無事に動きました。精進いたします。



記事削除

記事NO.パスワード
(質問が解決したスレッドは他の利用者に活用してもらうため、削除しないようお願いします)

NO.99700への返信

マスコット

好きなマスコットを選んでください。

名前

e-mail
HOME
  1. 初めて利用する方は、HSP3掲示板の使い方をお読みください。
  2. 不要部分の多い長いスクリプトの投稿は ご遠慮ください。
  3. 書き込みは自動改行されません。適度に改行を入れてください。
  4. スクリプトは小文字の<pre>〜</pre>で囲むと見やすく表示できます。

削除用パスワード

解決したら質問者本人がここをチェックしてください。

エラー発生時、再送信すると二重送信になることがあります。
回答が得られたら、お礼書き込み時に[解決]チェックしてください。
SPAM防止のためURLから始まる文章は投稿できません。
SPAM防止のため英文字のみの本文を投稿することはできません。

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