Đây là bài đăng đầu tiên của tôi để ngăn xếp tràn. Tôi đã lurking trang web này cho thông tin trong nhiều năm, và nó luôn luôn hữu ích, vì vậy tôi nghĩ rằng tôi sẽ gửi câu hỏi đầu tiên của tôi.Đánh dấu và chọn văn bản bằng lời nguyền Python
Tôi đã tìm kiếm một số ví dụ tương tự, nhưng dường như không tìm thấy bất kỳ điều gì.
Cuối cùng, tôi đang cố gắng viết một ui văn bản đơn giản để tìm kiếm các kết quả dương tính giả và âm bản sai trong một chương trình trích xuất văn bản. Mô-đun dương tính giả là một lựa chọn có/không đơn giản, và hiển thị văn bản màu và sử dụng getch() là đủ dễ dàng. Tuy nhiên, phần âm tính sai là trở nên khó khăn.
Vì vậy, đây là những gì tôi muốn làm:
- hiển thị một chuỗi lên màn hình (quên di chuyển cho bây giờ .... ugh) Nó sẽ chỉ là một chuỗi không có ký tự dòng mới.
- Người dùng nhìn thấy văn bản và nhấn 'h' để vào chế độ đánh dấu.
- Sau đó, người dùng có thể điều khiển con trỏ để di chuyển nó qua một phần văn bản (vẫn hiển thị) và chọn 'v' để bắt đầu làm nổi bật (Tôi cố gắng làm điều này gần vi nhất có thể)
- người dùng sau đó sử dụng các phím điều khiển (mũi tên, hjkl) để di chuyển con trỏ từ điểm bắt đầu đến điểm kết thúc, làm nổi bật văn bản trên đường đi. Phần được đánh dấu này phải là một từ sai âm
- Người dùng nhấn một số phím ('y' có thể) và văn bản đã chọn được tô màu hoặc vẫn được tô sáng và văn bản được đánh dấu sẽ được lưu vào một số biến mà tôi ' sẽ xử lý sau.
- Người dùng thoát chế độ làm nổi bật và tiến hành.
Bất kỳ ý tưởng nào thậm chí BẮT ĐẦU? Tôi đang thử những thứ đơn giản như giữ văn bản trên màn hình và di chuyển con trỏ xung quanh, nhưng không có kết quả.
Tôi biết về mô-đun curses.textpad.TextBox(), nhưng nó thực hiện chỉnh sửa như chèn và xóa, mà tôi không muốn làm. Có lẽ có một cách để vô hiệu hóa nó.
Tôi có các câu hỏi khác, nhưng tôi sẽ duy trì điều này cụ thể ngay bây giờ.
Cảm ơn !!
Neal
Edit: Để cụ thể hơn, tôi không tìm kiếm sự giúp đỡ bằng văn bản cho toàn bộ chương trình, chỉ cần giúp di chuyển con trỏ trên văn bản hiển thị, làm nổi bật nó, và chọn nó và lưu nó trong một biến.
Cảm ơn bạn đã phản hồi. Tôi tưởng tượng Tkinter có thể dễ sử dụng hơn. Vấn đề là tôi phải chạy từ xa đến máy chủ mà tôi phải ssh hai lần để có được vào, và máy chủ cuối cùng không được kết nối với internet (nó chứa thông tin nhạy cảm). Tôi nghĩ rằng nó có một thư viện Tkinter, vì vậy tôi sẽ phải kiểm tra điều đó. Bởi vì tôi phải chạy tất cả mọi thứ thông qua một thiết bị đầu cuối, tôi đoán tôi có thể ssh -X; ssh -X để có thể tạo môi trường cửa sổ. – Neal