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


HSPTV!掲示板


未解決 解決 停止 削除要請

2024
0423
stdialog命令を使って複数ファイルを読み込みたい5解決


st

リンク

2024/4/23(Tue) 09:56:38|NO.101616

付属の「hspogg.dll」を使用して簡易的なメディアプレイヤーを作成しているのですが、

dialog "wav",16,"メディアファイル" ;メディアファイル読み込み
と書くとwavファイルが読み込めますが、ダイアログボックスを開いてファイルを選択する際に、oggファイルも一覧に出るようにしたいです。

dialog "wav,ogg",16,"メディアファイル" ;メディアファイル読み込み
と書くと一覧に出てこなかったのですが、wavとoggの間は、どの記号で区切ればよいのか教えていただきたいです。
よろしくお願いします。



この記事に返信する


TOMATO

リンク

2024/4/23(Tue) 11:33:51|NO.101617


dialog "wav;*.ogg",16,"メディアファイル" ;メディアファイル読み込み

https://docs.hsp.moe/3.6/sample/basic/filedialog.hsp



st

リンク

2024/4/23(Tue) 14:01:34|NO.101618

無事読み込めました。ありがとうございました!



ABATBeliever

リンク

2024/4/26(Fri) 23:03:33|NO.101632

タダ乗りみたいになってすいません
「2つ以上のファイルを選択する」にはどうしたらいいんでしょうか?
スレッドを建てようとも思ったのですが、タイトルがすごく似てしまうので,,,

たとえばWindowsメモ帳のように、複数ファイルを選択して
"hoge1.txt" "hoge2.txt" みたいになるやつです

hsp2時代のクローリングページもリンク切れで見れませんでした
分かる方お願いします。



沢渡

リンク

2024/4/27(Sat) 00:45:52|NO.101633

私が過去に作ったモジュールですが。

#include "comdlg32.as" //multi_opendlg 配列名 //複数のファイルを選択できる「開く」ダイアログを開く。 //ユーザーがファイルを選んだ場合、配列名に指定した変数が文字列配列として初期化され、 //そこに選ばれたファイル名が入り、statには配列の要素数が代入される。 // //ユーザーが1つだけファイルを選んだ場合は配列の要素数は1になり、 //そこに選ばれたファイルのフルパスが入る。 //ユーザーが複数のファイルを選んだ場合は配列の要素数は3以上になり、 //最初の要素にはディレクトリ名が、以降の要素にはファイル名が入る。 //キャンセルされるかエラーが起きた場合はstatは0になる。 #module #const max_chr 65535 //一度に取得できる最大文字数(必要に応じて変えてください) #deffunc multi_opendlg array arr c_dir=dir_cur dim ofn,22 sdim strfile,max_chr*2 //OFN_FORCESHOWHIDDEN | OFN_EXPLORER | OFN_PATHMUSTEXIST | OFN_ALLOWMULTISELECT | OFN_HIDEREADONLY = 0x10080A04 ofn=88,hwnd,hinstance,0,0,0,0,varptr(strfile),max_chr,0,0,0,0,0x10080A04 GetOpenFileNameW varptr(ofn) : res=stat chdir c_dir if res=0 : return 0 flag=0 : items=0 repeat max_chr //アイテム数を数える if wpeek(strfile,cnt*2) { flag=0 } else { if flag : break flag=1 items++ } loop if items=0 : return 0 sdim arr,64,items item_pos=0 : start=0 : cou=0 : flag=0 repeat max_chr if wpeek(strfile,cnt*2) { if flag : start=cnt : cou=0 : item_pos++ flag=0 cou++ } else { if flag : break flag=1 if cou { sdim buf,cou*2+2 memcpy buf,strfile,cou*2,0,start*2 arr(item_pos)=cnvwtos(buf) } } loop dim strfile return items #global //以下、使用例 multi_opendlg hoge mes stat repeat stat mes hoge(cnt) loop



ABATBeliever

リンク

2024/5/1(Wed) 23:55:09|NO.101647

ありがとうございます!



記事削除

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

NO.101616への返信

マスコット

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

名前

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

削除用パスワード

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

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

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