ncurses'da bazı bilgileri görüntüleyen bir program yapıyorum ve kullanıcının bir dosyayı düzenlemesine izin vermek için vim'i (system
kullanarak) açar. Vim çıktıktan sonra, ncurses ekranı yeniden çizilmeyecek. refresh
ve wrefresh
hiçbir şeyi yapmaz, bu da benim güzel menümün tamamen çöpe atılmasıyla sonuçlanır.C - ncurses uygulamasından harici programa geri dönme ve geri dön
Böylece, komut satırına geri gönderiliyorum. Menü öğeleri, onlara taşıdığımda yeniden çizilir. şey biraz sonuçlarına etrafında Hareketli şöyle görünür: Gördüğünüz gibi
, artık benim güzel ncurses'in ortamda duyuyorum ,.
ncurses'ı tamamen yırtıp yeniden ayarlayabilirim, ancak bazı şeyler (menü konumu gibi) korunmuyor.
Bunu nasıl doğru yaparım? Bazı harici programları aramanın ve burada zarafetle geri dönmenin daha iyi bir yolu var mı?
Teşekkür geri olmalı! Bu işe yarıyor gibi görünüyor, ama her şimdi ve sonra lanetlerimin UI'sine geri dönüyorum ve tuş vuruşlarımın hiçbiri kayıtsız. Bu yüzden programı öldürmek zorundayım. Herhangi bir fikir? –
ncurses'i nasıl başlatıyorsunuz? initscr();/* curses kitaplığını başlatır */ tuş takımı (stdscr, TRUE);/* klavye eşlemesini etkinleştir */ nonl();/* küfürlerin çıkışta NL-> CR/NL yapmamalarını söyleyin */ cbreak();/* giriş karakterlerini birer birer alır, \ n */ noecho() için beklemeyin;/* yankılanma yok */ Giriş yöntemini değiştiren bir şey var mı? Eğer – Tree77
döndüğünüzde cbreak() çağırabiliriz, yukarıdakilerin tümünü yapıyorum, maalesef hala şanssız. –