hendrik otten
11.01.02, 10:43
Wie bekomme ich den Mauszeiger vom Bildschirm?
Deaktivierung von Section Pointer in XF86Config bewirkt nur eine Fehlermeldung.
Wenn's nicht geht, wie kann ich dann dieses Balkenkreuz ersetzen? Ich will's für eine bestimmte Anwendung einfach nicht sehen
Moin hendrik,
dieses kleine Script sollte Dein Problem lösen:
#!/bin/sh
#/usr/local/bin/hidepointer
function cleanup()
{
rm -f "${TMPFILE0}" "${TMPFILE1}" 2>/dev/null
}
trap cleanup SIGTERM SIGINT EXIT
TMPFILE0=`mktemp "/tmp/${0}.XXXXXX"`
TMPFILE1=`mktemp "/tmp/${0}.XXXXXX"`
if [ "${1}" = "-hide" ]; then
cat <<__EOT__>"${TMPFILE0}"
#define hide_width 16
#define hide_height 16
#define hide_x_hot 0
#define hide_y_hot 0
static unsigned char hide_bits[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00};
__EOT__
xsetroot -cursor "${TMPFILE0}" "${TMPFILE0}" || exit 1
elif [ "${1}" = "-show" ]; then
cat <<__EOT__>"${TMPFILE0}"
#define left_ptr_width 16
#define left_ptr_height 16
#define left_ptr_x_hot 3
#define left_ptr_y_hot 1
static char left_ptr_bits[] = {
0x00, 0x00, 0x08, 0x00, 0x18, 0x00, 0x38, 0x00, 0x78, 0x00, 0xf8, 0x00,
0xf8, 0x01, 0xf8, 0x03, 0xf8, 0x07, 0xf8, 0x00, 0xd8, 0x00, 0x88, 0x01,
0x80, 0x01, 0x00, 0x03, 0x00, 0x03, 0x00, 0x00};
__EOT__
cat <<__EOT__>"${TMPFILE1}"
#define left_ptrmsk_width 16
#define left_ptrmsk_height 16
static char left_ptrmsk_bits[] = {
0x0c, 0x00, 0x1c, 0x00, 0x3c, 0x00, 0x7c, 0x00, 0xfc, 0x00, 0xfc, 0x01,
0xfc, 0x03, 0xfc, 0x07, 0xfc, 0x0f, 0xfc, 0x0f, 0xfc, 0x01, 0xdc, 0x03,
0xcc, 0x03, 0x80, 0x07, 0x80, 0x07, 0x00, 0x03};
__EOT__
xsetroot -cursor "${TMPFILE0}" "${TMPFILE1}" || exit 1
else
echo "Usage: ${0} <-hide|-show>" 2>&1
exit 1
fi
exit 0
Gruß
Mombartz
@Mombartz
Hab mal ne newbie Frage:
Was haben die ersten beiden Zeilen deines scriptes für einen Sinn? Das ist doch nur Kommentar, oder bedeutet es bei scripte etwas anderes?
Danke win2lin
Moin,
die erste Zeile (beginnend mit #!) sagt der Shell welchem Programm sie das Script als Parameter übergeben soll.
Wenn Du z.B. ein Script mit dem Namen »foo« erstellst...
#!/usr/bin/perl -w
print("Hello World!\n");
...dann führt die Shell, den Befehl »/usr/bin/perl -w foo« aus.
Die zweite Zeile ist wirklich nur ein Kommentar, der Dir sagen sollte unter welchem Namen Du das Script abspeichern sollst.
Übrigens nach dem Abspeichern mußt Du das Script mit »chmod 0755 /usr/local/bin/hidepointer« ausführbar machen.
Gruß
Mombartz
hendrik otten
24.01.02, 09:58
Hallo Mombartz,
danke für den Tip. Es funktioniert hervorragend.
Gruß
Hendrik
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.