2011-12-19 35 views
7

Tôi muốn đặt trình nghe chuột cho Lable của mình để tôi có thể thay đổi con trỏ thành HAND_CURSOR khi người dùng đặt chuột lên nhãn.Cách đặt con trỏ: tay với GWT: nhãn

<g:Label text="Overview" styleName="left_menu_title" ui:field="lb_overview"/> 

Tôi đã cố đặt kiểu CSS "con trỏ: tay;" cho Nhãn này, nhưng khi chạy, tất cả con trỏ thuộc tính đã được thay thế.

Bạn có đề xuất nào không?

+0

Bạn có nghĩa là "con trỏ: con trỏ" css không? –

+0

Tôi đã thử "con trỏ: điểm" và "con trỏ: tay" nhưng nó vẫn được thay thế – Jimmy

+1

thêm 'con trỏ: con trỏ! Quan trọng;' để ép buộc kiểu CSS của bạn nếu một cái gì khác đang ghi đè lên nó. – Strelok

Trả lời

2

Cách thích hợp để làm điều đó sẽ là:

.left_menu_title { 
    cursor: pointer; 
} 

<g:Label text="Overview" styleName="{style.left_menu_title}" ui:field="lb_overview"/> 
+0

Như tôi đã nói, tất cả thuộc tính của con trỏ đã được thay thế. Ngay cả "con trỏ: điểm;" "con trỏ: tay;" – Jimmy

+0

đã thêm quy tắc tạo kiểu nhãn. Bạn đã không khai báo nó đúng cho nhãn. –

+1

Có lẽ bạn nên sử dụng 'addStylesNames' thay vì' styleName', nhưng điều đó độc lập với vấn đề được thảo luận ở đây; chỉ là một FYI. –

2

Bạn chỉ cần làm như sau:

.left_menu_title { 
cursor: pointer; 
} 

Nếu bạn muốn có một mã để làm điều khác ngoài đặt con trỏ thành con trỏ:

import com.google.gwt.dom.client.Style.Cursor; 
import com.google.gwt.event.dom.client.MouseOverEvent; 
import com.google.gwt.event.dom.client.MouseOverHandler; 
import com.google.gwt.user.client.ui.Label; 

... 
... 
... 


final Label testLabel = new Label(); 
testLabel.addMouseOverHandler(new MouseOverHandler() {  
     @Override 
     public void onMouseOver(MouseOverEvent event) { 
      testLabel.getElement().getStyle().setCursor(Cursor.POINTER); 

      //TODO: any thing you want  
     } 
    }); 
19

Câu trả lời được cung cấp bởi user1557828 sẽ trên thực tế gây ra Label để hiển thị con trỏ khi chuột đã qua nó, nhưng có một cách đơn giản hơn để đạt được kết quả tương tự:

Label testLabel = new Label("Text Goes Here); 
testLabel.getElement().getStyle().setCursor(Cursor.POINTER); 

này sẽ thiết lập con trỏ tại instantiation và phong cách sẽ vẫn tồn tại. Không cần thiết phải áp dụng lại phong cách mỗi khi chuột di chuyển trên nhãn.

2
where to this one.. 
Label testLabel = new Label("Text Goes Here); 
testLabel.getElement().getStyle().setCursor(Cursor.POINTER); 

in my code provided below.. 

{ 
    xtype:'label', 
    text:'testLabel', 
    id:'cancel1', 
    Label testLabel = new Label("Text Goes Here); 
    testLabel.getElement().getStyle().setCursor(Cursor.POINTER); 
    listeners : { 
    render : function(d) { 
    d.getEl().on('click', function(){ this.fireEvent('click', d); }, d); 
} 
} 

} 
+0

tôi đã thử điều này trong mã của tôi nhưng nó không phải là plz làm việc cho tôi câu trả lời thích hợp, nơi để đặt nó trong mã của tôi ... – krupal

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