1
文字化けが発生しますが、正しい情報も表示されます。 また、すべてのファイルを出力していないようです。私は私の音楽ディレクトリ全体を行うときに、私は3つの項目を持つメニューを示しています2000ファイルを含むすべてのファイルが含まれています。私はそれが正常にファイルをスキャンすることを知っている、それは私のncursesコードの問題と思われる。これはなぜ壊れた出力を生成していますか? (ncursesメニュー)
void init_song_menu(vector<Song>& songs){
int nsongs = (int) songs.size();
printw("%d",nsongs);
ITEM **items;
items = (ITEM **)calloc(nsongs,sizeof(ITEM *));
for(int i = 0; i < nsongs; ++i){
//printw(choice.c_str());
string* choice = new string;
choices.push_back(choice);
//*choice += songs.at(i).get_path();
*choice += songs.at(i).get_ID3().title;
items[i] = new_item(choice->c_str()," ");
}
WINDOW *mw = newwin(30,90,4,4);
LSTWINDOW* menu_win = (LSTWINDOW*) mw;
menu_opts_off(menu_win->menu,O_SHOWDESC);
menu_win->menu = new_menu((ITEM **)items);
set_menu_win(menu_win->menu,mw);
set_menu_sub(menu_win->menu,derwin(menu_win,26,88,3,1));
set_menu_format(menu_win->menu,10,1);
set_menu_mark(menu_win->menu,"*");
wlist.push_back(menu_win);
focused = menu_win;
}
これはかなりのコードです。それを小さなコードサンプルに掘り下げて、あなたの質問に含めるようにしてください。将来のすべての訪問者に質問が提供されるはずです。ペーストビンのものは固執しないかもしれません。 – Collin
私はそれをメニューコードの中核を維持して少し縮小しようとしました。 – carboncomputed
選択肢はどこから来たのですか?なぜ初期化されていないのですか? – stark