Tôi đang tạo GUI (sử dụng xoay) cho một khung chơi poker và cần một số loại thanh trượt để cho phép người chơi chọn kích thước đặt cược. Tuy nhiên, Swing JSlider
chỉ hoạt động với các giá trị int trong khi tôi cần một cái gì đó có thể hỗ trợ tăng gấp đôi cho 1 dấu thập phân. Có bất kỳ thư viện nào tôi có thể sử dụng hoặc các thủ thuật với JSlider
không?JSlider cho nhân đôi
Trả lời
Bạn có thể nhân giá trị bằng 10
EDIT
Bạn có thể thay đổi các nhãn hiển thị như sau:
Hashtable labelTable = new Hashtable();
labelTable.put(new Integer(0), new JLabel("0.0"));
labelTable.put(new Integer(5), new JLabel("0.5"));
labelTable.put(new Integer(10), new JLabel("1.0"));
framesPerSecond.setLabelTable(labelTable);
Một lừa bạn có thể sử dụng với JSlider là sử dụng các đơn vị tính bằng xu. Vì vậy, nếu bạn muốn người dùng chọn một số tiền từ 1 đến 10 đô la bạn thực sự đặt JSlider thành phạm vi từ 100 đến 1000. Sau đó, bạn chỉ cần chuyển đổi giá trị thành đô la và xu khi người dùng chọn giá trị.
Sau đó, bạn có thể sử dụng Từ điển giá trị để chỉ định nhãn nào được hiển thị ở bất kỳ giá trị nào trên thanh trượt. Sử dụng phương pháp setLabelTable()
cho việc này.
Điều gì về tình huống mà số lượng tối thiểu phải là một đôi, cho phép nói 5.5, tôi sẽ làm cho JLabel đọc 5.5 và ánh xạ số nguyên 5 cho JLabel này. Nhưng khi tôi gọi JSlider.getValue() tôi sẽ nhận được 5, chứ không phải 5.5. Bất kỳ ý tưởng về cách đối phó với điều này? – Aly
Giá trị tối thiểu trong trường hợp này là 550. Bạn lập bản đồ này đến 5.50 để hiển thị. Khi bạn nhận được giá trị mà người dùng đã chọn, bạn chỉ cần chia cho 100 để nhận được 5,5. –
- 1. Thay đổi giao diện JSlider
- 2. Hiển thị JSlider với LabelTable tùy chỉnh
- 3. Chuỗi C++ để nhân đôi chuyển đổi mất chính xác?
- 4. Nhân đôi bảng MySQL, chỉ mục và dữ liệu
- 5. Bắt lỗi biên dịch CS0579: Nhân đôi thuộc tính 'AssemblyFileVersionAttribute'
- 6. Tăng gấp đôi một số - chuyển trái vs nhân
- 7. TSQL Remove nhân đôi hàng trên một số cột chỉ
- 8. Cách chính xác để nhân đôi đối tượng Delphi
- 9. PostgreSQL: làm thế nào để nhân đôi liên tiếp
- 10. Return FALSE cho các giá trị NA nhân đôi khi sử dụng chức năng sao chép()
- 11. sscanf cho đôi
- 12. Regexp cho một đôi
- 13. đôi trừ đôi cho vấn đề chính xác
- 14. Đây có phải là lỗi trong JSlider không?
- 15. Câu hỏi JSlider: Vị trí sau khi nhấp chuột trái
- 16. Làm thế nào để loại bỏ văn bản trên JSlider
- 17. Tạo một HashSet cho đôi
- 18. Có thể nhân đôi được sử dụng để đại diện cho số 64 bit mà không bị mất chính xác
- 19. Có an toàn khi nhân một phao/đôi bằng 0,5 thay vì chia cho 2 trong C# và C++ không?
- 20. cho vòng lặp, tăng thêm gấp đôi
- 21. Trả lại C++ gấp đôi cho Python?
- 22. Xử lý tràn khi đúc nhân đôi thành số nguyên trong C
- 23. hoán vị duy nhất không lặp lại nhân đôi hoặc vòng tròn
- 24. Độ chính xác của phép nhân đôi chính xác trong java?
- 25. Làm cách nào để thay đổi lược đồ thành cơ sở dữ liệu được nhân đôi?
- 26. Nhân một giá trị gấp đôi với 100.0 giới thiệu lỗi làm tròn?
- 27. Github phát hiện các kho được nhân đôi như thế nào?
- 28. iPhone - Vẽ một số văn bản với CGContext: ok nhưng ... được nhân đôi
- 29. Cách kết nối với máy chủ SQL được nhân đôi sau khi chuyển đổi dự phòng?
- 30. Không thể tạo Danh sách Liên kết được Nhân đôi Liên kết
liên quan http://stackoverflow.com/questions/1548606/java-link-jslider-and-jtextfield-for-float-value –