When the mouse clicks outside the panel, set the button value to 0?
-
I want to implement a function to open a panel using a button, at this time the button value is 1,When the mouse clicks outside the panel, set the button value to 0,Panel is closed,How can I do this?
-
@CatABC You can use the button you’re using to show the panel for this job.
When this button is 1, it covers the whole screen and is at the bottom of the panel. When the outside the panel is clicked, the value of the button becomes zero again and closes the panel, returns to the initial dimensions (x, y, width, height).
-
@CatABC you want the keyPressCallback and in the callback, you'll get the object for it.
The object has properties like hasFocus and isFocusChange, which is what you want to query.
When you click outside of the panel, it will lose focus. The keyPressCallback should trigger and the object will have isFocusChange true and hasFocus false. That's what you want to test for, and at that point set your button to zero by calling button.setValue(0) and close the panel by calling panel.showControl(false)
-
My method is to use two panels. I have one panel that is full screen, this has the mouse click event. The other panel goes within the first panel.
HiseSnippet 1003.3ocsV0saaaCElxILnxsMXEXO.B4Jmgh.q7icJFFlWbRVM1bhwbVv1UEzjTVDQhTPhJsFC8l8JsWf9zrq208l1CEkrkabSSMvzEF97+24vy4PNJUQ4YYpTjSyqlkvQNOAOdlTG1OjHjnAmhb1FOjjo4odVVmLKgjkwYHGmM9YCCG2MQEe+2OdBIhHo7ErPnqUBJ+WEwB8Bti58KhnnyIL9Uh3ZZeXuATkruJRkC3YCbaTBgdCYJ+BhQsFXzKIYgHmuC2gEP5v5dTae9AGy5tue2idwgc6ztc.6X+tS5N4.BizoaajyVmwDZU5XMQyy.mdhhMabn50Ra.tVjIlDwMD9nwPjsrQ8CEQrQUEmLDxYyQKJUaXKUeKdnfIlyeQI6aJD3svh5EMmF2Gj7+JfjSMHsoEROCOllJRzKjXvyiwCjvIX.ANapCEqtnF+YCbeEngTuWL4F94o.wbKZAk0m6A+r622rIb9jo8tkj5MhH4Q9d+fWkkS459p3DkDHZsiU7NFar+cuLtdnJOi2mDEMANWaEjKoZgR1heKXxtM+qlth.OK0dzHA8FNa2lttgBFuE3n2ZblPFIjbuJa8TxSx0Zkz2.iTUTKZEFdN.ynbdgeqf.TkqzyJD7J3zUmBkNdmcMPuzr4f+Si6xEmRYe1pybWuhLxltFTWpkI7WaPaKyQvbtzPhbJmUTYpUNtPo4WJsNn4aa58ohBBVorxzHhmtRwlA0z6yvVx73I7z5EcihPi4xc6a8v51o1xVMEUxARg9xDdI84pHloK17+6NafJq6lojRDBppKlQ1tbFwVHQBvIt3xpJp.90Wfg98AmRzjJGA9DhSBOUKLoiyo7agEb1gOW7o7razpDXW07CanB7.B6alGx2E0a1bhdpdnZd5IVO8zpgbSWcgidD11gWyOv2r5DuVvzgKhxe2KjKlFpqyYxzpcutaUYlPyiuOt6Wmsl+F8cUFFYfwtxAmLC76aFty7tTFMCcaUC.rYzoVt594x0sqyYoLlUqx8tI8JyXry6A5prE67u.UBIEBRsnMu.tb9d0U+yGVQ9VwFc2EvvpeEKOhnW99.yMkkBfwlkVBaVzJyD5Y0uI8q3Rh126kDOTH9L7HglFtZL1XEXDFH9+.ikWs9T7YAAbpdA.2De9ert2i9EB+uox0B4zgDcp.ZmvWjGOFNpobH5RnqHyz1zvrTwR21Pap.i4RVAwGfuRg9FZmRg9UBQwDZp5UT6pHyk2OpfCfIYwiabgWYAzdqXCTL7VhWQoK6p6X39qqgGrtFd35Z3QqqgcVWC6ttFd7W1PyS89obsJ1N1fPCGcVwMFNNmIIPGXQ2J5ihj+I3C
-
@d-healey do you have a video covering Panel callbacks?
-
-
@d-healey On it. Thank you again!
-
3 methods here. You could also use a paintRoutine and mouseCallback to add an X in a corner of a panel which could be clicked to close the panel. The advantage of the EventPanel method is that the panel could be used for all kinds of tasks simultaneously for different elements in your project
HiseSnippet 1350.3ocuX0saaaCElxIJKxqtqEXWOHTzKb.5RSr65FPvvRicxVvlSMl6xZuYELRzwDQlzUhNIFsAXOB6QXu.a.8sXON6MH6PQIQpXIaGWzoKR74vyGO+8Q4iY2PtGIJhGhrbdwjQDj0cr6MgIFzZ.lxPG1FYcW6N3HAIzUoZuIivQQDejk0JeuTgkypn3m+861CGfYdDsJD5XN0i7SzgTgVa2c+QZPvAXexKnCMr9I6dnGm0hGvGCwyJ1agFg8NCeJ4HrzrJ1Hq012mJ3g8DXAIBrYOt+jdC3WvT1eLMhdR.QJrMpGrQJ0nVCnA9cSy0HDxZ0t5LeEUl+41cn9zL85Jv8hWvUivrFXUYVgz12hPxxHjVUER22tmWHcjPuhLd9T6CYPCoOFJ0lghxVTkeXc6VbvBlXyg3yHGDBBYHp+zs15Qtve1XmpUgxcjv8bbn6diEBNaa2u0ME5oDQK9vQbFHT+AIq+fM1olAptXFInbPpkALFP1+bXo3EJEl1jX2UqJkEPYD29iYdBJm4xYIgiDeHOntWJ3GA9HXLYiZUeasptvCsua8TUR4D0xGUzsYDzqR2GQHX3NJStR8ORPDYQf1GCFZf8J3iyoTtYjTeL7V3ffS.xd8alZpBfthHwzgONhjgHspTmHMJelGqZSu.p2YD+zJPZRnSmYlOFlkDZxX3XYMsNPhbMdRL8J0muRxvd7i+xOlOlTXJqO+WoLe9EkxrzljmTpRrFyg82PBpTxXiRIiUe6Mnhp9PVcUGUEPFU7oLp3hAMo4kf8pcpNmzZVLwFYLQYtqc2b3gFIcdVXdRnlbMmT4lrvFkxBMHg+uyAUwVy4PjZlm80kOZ7nY+JQsIE.sU.OhLanwlLS5aykl9pisxouygB1b1TvlFTvBR.cFNqbvwHAb.QmRh6TBmiShyyQzp5DmLUmest3DZpXE1RiT4Htf7bV833sJbp+lK0uegqkrWAjvBWVNlU3r.VmMd3IjPypkzPXNj7C2r1hMbimp3XXHmcHiJd9HRh7A7.e4PKxOO8nPnjpqbNsjHDLUDORzcSFIR0bPTXSbrS9hITb3CJVKc7Szs.diOL3MWN32wVSIx1grwmQ+xgswBrb5vjZBTmFQBETY6vpM4bX7Z0rhN1sIQmI3iPVeRFkDFVT44ZoSRJ46INVOUA5RSmNwT3BpuX.xx15kUPnAD5oCDoRmbZ5r5Nqc80WGaNUPFp0ltIZsMLUKHWJldKfCKvowjiLPV9Y1OKHvUq.Yjcqs.jBibisqN2buX2rb6RjYt8EpV2svIMJyI+4jE0INk0mV2VMcloKdkgK.gLW7GVlt3elpe79+pEof9Qp5ySONashYncmxoP5uz1L7dnY38Pc30NGEp8hRgdSwTn2r7THiDUdvZgaBl84e+XirDDV7lPq2UXSHQ8HbHDKlkeyp7siW1rTx+69f4kIu3Zp2errbyV+86KprjptrV15K1aVuT5zeyJ9ka1VUk9IpCeHrE3PPkUkr3rdtxQ8h6HFoNZ5e198r6v8GGfE4uEA40kjr.7su49o6xedNKhJlXdcJ2hqVXqYd0BKZHde6tTg2fhiwJEDiv2K8wHFStPlZ162uOwSnCvUsO3kK6suLG2+y7wBJ6zNXQHURVNZ7vd.Gzi.dmA84HIanh7rgRdKorrBziv7iEfW9bcxhaKksRVb6zEQCwdg7W6oFJPdkOqGqAhIV7Mb4X2QJ6t8zCBLj5SesmW9sZJfMVVfMWVfOYYA9UKKvmtr.+5kE32LefxKH7YiE7gpiMHTmt6GO3lk09LLv.iYqn+SP7f9m
-
@rglides Sick. Thanks bro. I was thinking about something like this too. Solid. I'll check that out asap! Im over here playing whack-a-mole with something atm.
-
@Chazrox Ha I know that feelling! Good luck!