I have created a small Java application which has a JList. The JList uses a custom cell renderer I named SmartCellRenderer. The SmartCellRenderer extends JPanel and implements the ListCellRenderer. I have added two buttons on the right side inside the JPanel of the SmartCellRenderer, since I want to buttons for each list item, and I have added mouse/action listeners for both buttons. However, they don't respond. It seems that the JList property overcomes the buttons underneath it. So the buttons never really get clicked because before that happens the JList item is being selected beforehand. I've tried everything. I've put listeners in the Main class, called Editor, which has the JList and also have listeners in the SmartCellRenderer itself and none of them get invoked.
I also tried a manual solution. Every time the event handler for the JList was invoked (this is the handler for the JList itself and not the buttons), I sent the mouse event object to the SmartCellRenderer to manually check if the point the click happened was on one of the buttons in order to handle it.
I used:
// Inside SmartCellRenderer.java
// e is the mouse event object being passed from the Editor whenever
System.out.println("Recoqnizedt, but not a button click...");
//return;
} else {
System.out.println("Recognizedt, IT IS A MOUSE CLICK, PROCESSING...");
}
System.out.println("VALUEomp.toString());
What I realized is that not only this still doesn't work (it never realizes the component as a JButton) it also throws an exception for the last line saying comp is null. Meaning with the passed x,y position the getComponent() returns a null which happens when the coordinates passed to it are outside the range of the Panel. Which is a whole other problem?
I have yet to find an example on the web, using Google, that demonstrated using buttons inside a JList.
Windows 11 blocks Google Chrome due to a Microsoft safety feature, fix out by Sayan Sen
Microsoft has a parental control and safety feature called "Microsoft Family Safety" which allows users to create safe spaces for their family members for browsing the web by setting up filters so as to block and filter inappropriate content and limit browsing to kid-friendly and family friendly content.
However, as it turns out, following Chrome version updates 137.0.7151.68, 137.0.7151.69, Google's web browser is getting automatically blocked by Microsoft Family Safety as affected users have reported that the browser will automatically close or crash and then fail to reopen. Thus if you are using Edge, you get the green signal from the Family Safety app, but not if you are using Google Chrome.
The issue seems to be affecting mainly Windows 11 devices but Windows 10 or macOS may be affected too.
A thread on Microsoft's official Windows forum by Peter Priestley1, which is presumably from an educational institute, says:
The thread has been upvoted by 122 people at the time of writing.
There are plenty of other such threads online and users also say that they have tried all sorts of things like refreshing cookies and appdata but "nothing" seems to fix it. This shows that Microsoft's safety feature is certainly robust and that it is not easy to bypass but it also means affected users are not too happy about it considering it is seemingly blocking all versions of Chrome.
There is one fix that worked though, renaming chrome.exe to something else like chrome1.exe for example.
A Chrome community manager, Ellen T, has confirmed that the Microsoft feature is indeed what is causing it and the only way to fix the issue is to "unblock Chrome" inside the Family Safety app. Ellen says:
Microsoft has also shared a similar guidance on the issue according to Fred SR., a senior member of the Chrome community.
Some of these robots are getting pretty human-like, but obviously stronger and more bendy. Weight and balance is probably a big hurdle because of all the batteries they have to pack in them, but it'll continue to improve. I'm guessing these companies foresee a future where every household has a robot slave...I mean, assistant.
Question
SigmaX
Hi everyone,
I have created a small Java application which has a JList. The JList uses a custom cell renderer I named SmartCellRenderer. The SmartCellRenderer extends JPanel and implements the ListCellRenderer. I have added two buttons on the right side inside the JPanel of the SmartCellRenderer, since I want to buttons for each list item, and I have added mouse/action listeners for both buttons. However, they don't respond. It seems that the JList property overcomes the buttons underneath it. So the buttons never really get clicked because before that happens the JList item is being selected beforehand. I've tried everything. I've put listeners in the Main class, called Editor, which has the JList and also have listeners in the SmartCellRenderer itself and none of them get invoked.
I also tried a manual solution. Every time the event handler for the JList was invoked (this is the handler for the JList itself and not the buttons), I sent the mouse event object to the SmartCellRenderer to manually check if the point the click happened was on one of the buttons in order to handle it.
I used:
// Inside SmartCellRenderer.java
// e is the mouse event object being passed from the Editor whenever
// a JList item is selected or clicked on
Component comp = this.getComponent (e.getX(), e.getY())
if(!(comp instanceof JButton)) {
System.out.println("Recoqnizedt, but not a button click...");
//return;
} else {
System.out.println("Recognizedt, IT IS A MOUSE CLICK, PROCESSING...");
}
System.out.println("VALUEomp.toString());
What I realized is that not only this still doesn't work (it never realizes the component as a JButton) it also throws an exception for the last line saying comp is null. Meaning with the passed x,y position the getComponent() returns a null which happens when the coordinates passed to it are outside the range of the Panel. Which is a whole other problem?
I have yet to find an example on the web, using Google, that demonstrated using buttons inside a JList.
Can anyone help me with this. Thanks.
Link to comment
https://www.neowin.net/forum/topic/249343-button-event-handler-in-a-jlist-please-help/Share on other sites
3 answers to this question
Recommended Posts