記事"グラフィカルインタフェースVIII: ファイルナビゲータコントロール(チャプター3)"についてのディスカッション - ページ 4 123456 新しいコメント Anatoli Kazharski 2016.07.16 16:39 #31 Реter Konow: 論理的に考えれば、この2つの選択肢は互いに排他的だと思う。そうでないなら、喜んでそうさせてもらうよ。私はプロジェクトの仕上げに取り組んでいる。どれくらいかかるかは言えないが、必ず完成させる。私のプロジェクトも 完成には程遠い。興味のあるユーザーから興味深い提案が来ており、それを実現したいと思っている。リストはどんどん増えています。リタグ・コナウ:もしかしたら、将来的にあなたと私が協力することになるかもしれませんね :)何でも可能です。) Artyom Trishkin 2016.12.23 20:32 #32 Tol、質問:ナビゲーターでファイルではなく、プログラムファイルを保存するフォルダを選択する方法は? Anatoli Kazharski 2016.12.24 06:51 #33 Artyom Trishkin: Tol、質問:ナビゲーターでファイルではなく、プログラムファイルを保存するフォルダを選択する方法は?例//---//+------------------------------------------------------------------+//| イベントハンドラ|//+------------------------------------------------------------------+void CProgram::OnEvent(const int id,const long &lparam,const double &dparam,const string &sparam) {//--- ツリーリストのパス変更」イベントの処理 if(id==CHARTEVENT_CUSTOM+ON_CHANGE_TREE_PATH) { ::Print(__FUNCTION__," > id: ",id,"; file name: ",m_navigator.SelectedFile()); ::Print(__FUNCTION__," > id: ",id,"; path: ",m_navigator.CurrentPath()+m_navigator.SelectedFile()); ::Print(__FUNCTION__," > id: ",id,"; full path: ",m_navigator.CurrentFullPath()+m_navigator.SelectedFile()); //--- ファイルが選択されていれば、それを読み込む(最初の3行) if(m_navigator.SelectedFile()!="") { //--- ファイルへのパスを形成する string path=m_navigator.CurrentPath()+m_navigator.SelectedFile(); //--- 指定されたファイルのハンドルを取得する int filehandle=::FileOpen(path,FILE_READ|FILE_TXT|FILE_ANSI|m_navigator.DirectoryArea(),'\n'); //--- ハンドルを受け取ったら、最初の3行を読む。 if(filehandle!=INVALID_HANDLE) { ::Print(__FUNCTION__," > ファイルオープン: ",path); ::Print(__FUNCTION__," > 01行目: ",::FileReadString(filehandle)); ::Print(__FUNCTION__," > 02行目: ",::FileReadString(filehandle)); ::Print(__FUNCTION__," > 03行目: ",::FileReadString(filehandle)); } //--- ファイルを閉じる ::FileClose(filehandle); } ::Print("---"); return; } }//---CProgram::OnEvent > id: 1024; file name: CProgram::OnEvent > id: 1024; path: ChartScreenshot\ CProgram::OnEvent > id: 1024; full path: D:\#TradingTerminals\MetaTrader 5 pretest\MQL5\Files\ChartScreenshot\ Discussion of article "Graphical Writing and reading arrays グラフィカルインタフェースVIII: ファイルナビゲータコントロール(チャプター3) Artyom Trishkin 2016.12.24 07:37 #34 Anatoli Kazharski:例//---...//---CProgram::OnEvent > id: 1024; file name: CProgram::OnEvent > id: 1024; path: ChartScreenshot\ CProgram::OnEvent > id: 1024; full path: D:\#TradingTerminals\MetaTrader 5 pretest\MQL5\Files\ChartScreenshot\ ありがとうございました。 Artyom Trishkin 2016.12.27 22:04 #35 Anatoli Kazharski: Tol、もうひとつの質問:プログラムから新しいファイルを作成した後、ナビゲーターが表示するカタログの変更を確認するにはどうすればよいでしょうか?今のところ、ナビゲーターでデータが更新されるのは、時間枠の切り替えだけです。CFileNavigator.mqhのReset()メソッドでは、期待する結果が得られません。 Anatoli Kazharski 2016.12.28 06:56 #36 Artyom Trishkin: Tol、もうひとつの質問:プログラムから新しいファイルを作成した後、ナビゲーターが表示するカタログの変更を確認するにはどうすればよいでしょうか?今のところ、ナビゲーターでデータが更新されるのは、時間枠の切り替えだけです。CFileNavigator.mqhのReset()メソッドでは、望ましい結果が得られません。 まだ実装されていませんが、計画中です。 Artyom Trishkin 2016.12.28 07:22 #37 Anatoli Kazharski: まだ実施されていませんが、計画にはあります。なるほど。待ちましょう...。もう一つ質問です:ナビゲーターのサブフォルダーは一般的なアルファベット順のリストに従って配置されています。これは不便です:修正はありますか? Anatoli Kazharski 2016.12.28 07:31 #38 Artyom Trishkin:別の質問:ナビゲーターのサブフォルダーは、一般的なアルファベット順のリストに従って配置されています。これは不便です:...修正はありますか? 不便なのは同感です。修正はあるでしょう。時期はまだ言えない。 Artyom Trishkin 2016.12.28 07:45 #39 Anatoli Kazharski: 不便なのは同意する。修正はあるだろう。時期はまだ言えないけど。 なるほど、そうですか...焦らなくていい) Anatoli Kazharski 2016.12.28 08:21 #40 Artyom Trishkin: そうだね急いではいないんだ ;) ちなみに、これはファイルシステムを読むときのリストの順番だ。つまり、オペレーティング・システムのファイル・ナビゲーターで 見る順番ではない。 123456 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
論理的に考えれば、この2つの選択肢は互いに排他的だと思う。そうでないなら、喜んでそうさせてもらうよ。私はプロジェクトの仕上げに取り組んでいる。どれくらいかかるかは言えないが、必ず完成させる。
私のプロジェクトも 完成には程遠い。興味のあるユーザーから興味深い提案が来ており、それを実現したいと思っている。リストはどんどん増えています。
リタグ・コナウ:
もしかしたら、将来的にあなたと私が協力することになるかもしれませんね :)
何でも可能です。)
Tol、質問:ナビゲーターでファイルではなく、プログラムファイルを保存するフォルダを選択する方法は?
例
//---
//| イベントハンドラ|
//+------------------------------------------------------------------+
void CProgram::OnEvent(const int id,const long &lparam,const double &dparam,const string &sparam)
{
//--- ツリーリストのパス変更」イベントの処理
if(id==CHARTEVENT_CUSTOM+ON_CHANGE_TREE_PATH)
{
::Print(__FUNCTION__," > id: ",id,"; file name: ",m_navigator.SelectedFile());
::Print(__FUNCTION__," > id: ",id,"; path: ",m_navigator.CurrentPath()+m_navigator.SelectedFile());
::Print(__FUNCTION__," > id: ",id,"; full path: ",m_navigator.CurrentFullPath()+m_navigator.SelectedFile());
//--- ファイルが選択されていれば、それを読み込む(最初の3行)
if(m_navigator.SelectedFile()!="")
{
//--- ファイルへのパスを形成する
string path=m_navigator.CurrentPath()+m_navigator.SelectedFile();
//--- 指定されたファイルのハンドルを取得する
int filehandle=::FileOpen(path,FILE_READ|FILE_TXT|FILE_ANSI|m_navigator.DirectoryArea(),'\n');
//--- ハンドルを受け取ったら、最初の3行を読む。
if(filehandle!=INVALID_HANDLE)
{
::Print(__FUNCTION__," > ファイルオープン: ",path);
::Print(__FUNCTION__," > 01行目: ",::FileReadString(filehandle));
::Print(__FUNCTION__," > 02行目: ",::FileReadString(filehandle));
::Print(__FUNCTION__," > 03行目: ",::FileReadString(filehandle));
}
//--- ファイルを閉じる
::FileClose(filehandle);
}
::Print("---");
return;
}
}
//---
CProgram::OnEvent > id: 1024; path: ChartScreenshot\
CProgram::OnEvent > id: 1024; full path: D:\#TradingTerminals\MetaTrader 5 pretest\MQL5\Files\ChartScreenshot\
例
//---
...
//---
CProgram::OnEvent > id: 1024; path: ChartScreenshot\
CProgram::OnEvent > id: 1024; full path: D:\#TradingTerminals\MetaTrader 5 pretest\MQL5\Files\ChartScreenshot\
Tol、もうひとつの質問:プログラムから新しいファイルを作成した後、ナビゲーターが表示するカタログの変更を確認するにはどうすればよいでしょうか?今のところ、ナビゲーターでデータが更新されるのは、時間枠の切り替えだけです。CFileNavigator.mqhのReset()メソッドでは、望ましい結果が得られません。
まだ実施されていませんが、計画にはあります。
なるほど。待ちましょう...。
もう一つ質問です:ナビゲーターのサブフォルダーは一般的なアルファベット順のリストに従って配置されています。これは不便です:
修正はありますか?
別の質問:ナビゲーターのサブフォルダーは、一般的なアルファベット順のリストに従って配置されています。これは不便です:
...
修正はありますか?
不便なのは同意する。修正はあるだろう。時期はまだ言えないけど。
そうだね急いではいないんだ ;)