
Zitat von
Florian Bernd:
Du musst nur die Bitmaps so ändern, dass die Transparensfarbe unten rechts ist statt oben links.
Bist Du dir da sicher... Kuck dir doch grad mal im Screenshot das Eurozeichen an... Das hat unten rechts auch diese Pink Farbe.
Noch 2 Bemerkungen bzw. Anregungen zur neuen Version:
- Das Programm hat das Problem, wenn aus dem Tray heraus wieder angezeigt wird, dass es unter allen anderen Fenstern dargestellt wird, also verdeckt ist... Ich hatte das gleich Problem, und habs mit folgendem Code gelöst (glaub ich auch hier in der DP gefunden zu haben). Vielleicht ist er ja auch nützlich für dich.
Delphi-Quellcode:
function ForceForegroundWindow(hwnd: THandle; Delay : Integer): Boolean;
const
SPI_GETFOREGROUNDLOCKTIMEOUT = $2000;
SPI_SETFOREGROUNDLOCKTIMEOUT = $2001;
var
ForegroundThreadID: DWORD;
ThisThreadID: DWORD;
timeout: DWORD;
begin
if delay <> 0 then
sleep(delay);
if IsIconic(hwnd) then ShowWindow(hwnd, SW_RESTORE);
if GetForegroundWindow = hwnd then Result := True
else
begin
if ((Win32Platform = VER_PLATFORM_WIN32_NT) and (Win32MajorVersion > 4)) or
((Win32Platform = VER_PLATFORM_WIN32_WINDOWS) and
((Win32MajorVersion > 4) or ((Win32MajorVersion = 4) and
(Win32MinorVersion > 0)))) then
begin
Result := False;
ForegroundThreadID := GetWindowThreadProcessID(GetForegroundWindow, nil);
ThisThreadID := GetWindowThreadPRocessId(hwnd, nil);
if AttachThreadInput(ThisThreadID, ForegroundThreadID, True) then
begin
BringWindowToTop(hwnd);
SetForegroundWindow(hwnd);
AttachThreadInput(ThisThreadID, ForegroundThreadID, False);
Result := (GetForegroundWindow = hwnd);
end;
if not Result then
begin
SystemParametersInfo(SPI_GETFOREGROUNDLOCKTIMEOUT, 0, @timeout, 0);
SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, TObject(0),
SPIF_SENDCHANGE);
BringWindowToTop(hwnd);
SetForegroundWindow(hWnd);
SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0,
TObject(timeout), SPIF_SENDCHANGE);
end;
end
else
begin
BringWindowToTop(hwnd);
SetForegroundWindow(hwnd);
end;
Result := (GetForegroundWindow = hwnd);
end;
end;
- Wenn ich die Sicherheitsabfrage abschalte, ob ich speichern will, vertrete ich eher die Meinung, dass beim Beenden bzw. Minimieren automatisch gespeichert wird, und nicht automatisch gecancelled wird.
Ich werd aber noch weiter fleissig dran testen, da mir das Programm sehr gefällt und es auch sehr gelungen implementiert ist... Jetzt müssen wir nur noch Hagen oder sonst einen Crack drüberjagen, der was zum Thema Sicherheit der gespeicherten Passwörter sagen kann, sowohl in der Datei, als auch im Speicher, wenn der Container geladen ist.