2011-10-24 31 views
21

Ứng dụng có thể thao tác văn bản console hoặc thiết bị đầu cuối dựa, và thay đổi màu sắc của họ, thiết lập vị trí con trỏ, ...văn bản di động dựa trên giao diện điều khiển thao túng

Các phương pháp hỗ trợ là:

nhưng, có bất kỳ trọng lượng nhẹ và di động C/C++ thư viện mà xử lý những khác biệt giữa các hệ điều hành chỉ cho màu sắc và con trỏ?và không làm gì cả nếu nó là về mặt kỹ thuật không thể, nhưng nỗ lực tối đa

Lưu ý: Tôi không tìm kiếm các công cụ bên ngoài nặng để thi đua thiết bị đầu cuối unix-like (như Cygwin, MSys-rxvt, ...). tôi nghĩ rằng một tính di động đơn giản sẽ đạt được với các API Windows và mã thoát ANSI.
Và không ncurses vì ​​nó nặng và có nhiều chức năng đầy đủ giao diện điều khiển kiểm soát và tôi nghĩ rằng nó cần thi đua

Note (2): nỗ lực trước đó và xấu xí của tôi là một thư viện Console cho Windows mà viết bằng VC++ 6, nhưng nó không di động ... Bạn có thể thấy nó here.

+4

google: ncurses. – Nim

+1

@Nim: Cần trình mô phỏng thiết bị đầu cuối cho Windows - Đọc câu hỏi được cập nhật của tôi – deepmax

+2

@MasoudM .: Có PDCurses trên cửa sổ (** [MonoCurses] (http://www.mono-project.com/Libraries#Curses) ** dường như sử dụng nó) – sehe

Trả lời

25

Alright, tôi cuối cùng đã tìm thấy một di động và dễ sử dụng thư viện: rlutil.h

Cách sử dụng:

#include <iostream> 
#include "rlutil.h" 
int main() 
{ 
    for (int i = 0; i < 16; i++) 
    { 
     rlutil::setColor(i); 
     std::cout << i << " "; 
    } 
    std::cout << std::endl; 
    return 0; 
} 

nhưng, tôi sẽ được vui mừng cho các đề xuất khác.

+11

Tìm tốt. mặc dù tôi tự hỏi liệu tôi có nên nghi ngờ sự thành thạo của nhà phát triển về lựa chọn màu sắc của anh ấy trên trang web của anh ấy không! :) – Scott

+0

Có ai biết cách đặt lại màu mặc định không? Khi tôi thay đổi, màu mặc định của thiết bị đầu cuối sẽ trở thành màu bất kỳ mà tôi đã sử dụng lần trước và không có màu thực sự ánh xạ tới màu mặc định trên bất kỳ thiết bị đầu cuối nào mà tôi đã thử ('xterm',' gnome-terminal' và 'cmd.exe' đáng kính) – Thomas

+0

Khó khăn để trình bày thỏa thuận cấp phép cho người hợp pháp của tôi. :-) – Jamie

Các vấn đề liên quan