Làm cách nào để sao chép nội dung văn bản của hộp thoại trên OS X?


9

Nhiều người không biết rằng trên Windows, bạn có thể sao chép toàn bộ nội dung văn bản của MessageBox bằng cách nhấn Ctrl ⌃+ Ckhi hộp thoại được tập trung.

Đây là một tính năng thiết yếu để báo cáo các thông báo lỗi và trong một số trường hợp, chúng có thể rất lớn.

Tuy nhiên, dường như trên OS X, Command ⌘+ Ckhông hoạt động và tôi tự hỏi liệu có phương pháp nào khác để thực hiện việc này không.

Làm ảnh chụp màn hình không thuận tiện lắm, đặc biệt là chúng không thể tìm kiếm được: p

Tôi đang tìm kiếm một giải pháp chung chung, nếu nó tồn tại . Đây là một ví dụ:

nhập mô tả hình ảnh ở đây


2
Trong một số trường hợp, bạn có thể chọn văn bản bằng chuột / bàn di chuột và sau khi được chọn, bạn có thể sao chép nó bằng Cmd + C; nhưng, thật không may, điều đó không phải lúc nào cũng có thể
iolsmit

Có vẻ như nó phụ thuộc vào cách nhà phát triển thực hiện hộp thoại. Trong Safari, Textmate và Terminal, các hộp thoại mà tôi đã thử đều có thể chọn. Tôi đã cố gắng xem hộp thoại about cho Transmit và văn bản của nó không thể chọn được.
badams

Đã đồng ý. Tất cả phụ thuộc vào hộp. Một số hộp văn bản tôi có thể chọn, một số tôi không thể. Đặt cược tốt nhất của bạn là chỉ cần chụp ảnh màn hình của hộp thoại.
daviesgeek

Câu trả lời:


6

Cách chung nhất có thể là sử dụng Trình kiểm tra khả năng truy cập và sao chép văn bản dưới dạng cửa sổ của nó.

Trong Mac OS X v10.4 trở lên, Apple cung cấp công cụ kiểm tra Trình kiểm tra khả năng truy cập ...

Trình kiểm tra khả năng truy cập trình bày một cửa sổ tiện ích hiển thị các thuộc tính (và giá trị), hành động và vị trí trong hệ thống phân cấp khả năng truy cập của đối tượng hiện dưới con trỏ chuột. Để sử dụng Trình kiểm tra khả năng truy cập, hãy đảm bảo bật các ứng dụng trợ giúp trong Tùy chọn truy cập chung.

Biểu tượng thanh tra khả năng truy cập

Dưới đây là một ví dụ cho Trim Enabler, nơi bạn không thể chọn và sao chép văn bản của tab "Giới thiệu":

Trim Enabler - Giới thiệu về tab

Và cửa sổ được hiển thị bởi Trình kiểm tra trợ năng:

Ví dụ thanh tra khả năng tiếp cận

Điều này là với con trỏ chuột di chuột qua văn bản dài, sau đó có thể được tìm thấy trong AXValue.

Chỉnh sửa 2014-10-18:

Ví dụ tiếp theo cho thấy từng bước làm thế nào để sao chép văn bản không thể chọn bằng Trình kiểm tra khả năng truy cập 4.0:

Mở cửa sổ từ đó thông tin sẽ được trích xuất và mở Trình kiểm tra khả năng truy cập, sau đó di con trỏ chuột lên phần tử quan tâm:

copy văn_with_Accessibility_Inspector

Nhấn Command ⌘+ 7để khóa Trình kiểm tra khả năng truy cập, sau đó nhấp vào dòng bạn muốn sao chép (ví dụ: AXValue) và nhấn Command ⌘+ Cđể sao chép vào bảng tạm:

lock_Accessibility_Inspector_and_select_AXValue

Dán văn bản đã sao chép khi cần:

dán văn bản


Tôi đã cố gắng làm điều này bằng cách sử dụng trình kiểm tra khả năng truy cập nhưng không thể có được văn bản. Bạn có thể giải thích các bước?
Bánh răng kim loại

1
@MetalGear -> Tôi đã thêm một ví dụ khác cho thấy từng bước làm thế nào để sao chép văn bản mong muốn bằng Trình kiểm tra khả năng truy cập 4.0
iolsmit

1

Trường hợp chung là lập trình viên cần hiển thị văn bản này trên hộp thoại theo cơ sở hộp thoại, vì vậy bạn không thể dễ dàng sao chép văn bản trừ khi chương trình dự định cho bạn có chức năng đó.

Những việc bạn có thể làm, nhưng có vẻ nhiều việc hơn giá trị của nó là cho phép truy cập toàn cầu nơi văn bản có thể được gửi đến một thiết bị bên ngoài như màn hình chữ nổi hoặc thiết bị có mục đích đặc biệt khác và bằng cách nào đó được chụp.

Bạn cũng có thể thử bẻ khóa chương trình đó và sửa đổi cuộc gọi hộp thoại để thay đổi mọi thứ để nó luôn luôn có thể chọn. Điều đó có thể làm cho một câu hỏi tốt hơn cho phía lập trình của mọi thứ.

Bạn đã thực hiện điều thực tế - chụp ảnh nhanh và hy vọng tin nhắn được ghi ở nơi khác vào tệp văn bản. Liên kết đến câu hỏi này có thể là một cách hay để hỏi nhà phát triển chương trình nơi bạn cần khả năng này để sửa đổi thực hành mã hóa của họ như Safari, Terminal và các chương trình khác được đề cập trong các nhận xét ở trên.


0

Bạn cũng có thể chạy một tập lệnh như thế này trong AppleScript Editor:

tell application "System Events"
    value of UI elements of windows of process "Application Name"
end tell

Nếu bạn không thấy văn bản trong kết quả, hãy thử thêm một hoặc nhiều UI elements ofphần sau value of.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.