---
title: "Äkta fokus på programmet"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/27763-äkta-fokus-på-programmet"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "mott"
published: "2001-09-30T00:39:00.000Z"
updated: "2002-02-10T15:24:00.000Z"
replies: 4
views: 238
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/27763-äkta-fokus-på-programmet"
---

# Äkta fokus på programmet

## #1 — mott, 2001-09-30T00:39Z

Jag gör ett program där jag vill att det ska få äkta fokus, TOTAL uppmärksamhet och ploppa upp vad användaren än gör (man kan givetvis ställa in det)...

Hur gör jag? Försöker och försöker men programmet snappar inte åt sig fokus... :l

Permalänk: https://www.webforum.nu/p/27763

## #2 — Jon, 2001-10-01T07:18Z

Då får du lov att använda API.
Typ:

\<font size="1" face="Verdana, Arial, Helvetica, sans-serif"\>Kod:\<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#666600"\>
'API -----------------------------
Declare Function SetWindowPos Lib "user32" \_
  (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, \_
  ByVal x As Long, ByVal y As Long, ByVal cx As Long, \_
  ByVal cy As Long, ByVal wFlags As Long) As Long

Global Const SWP_NOMOVE = 2
Global Const SWP_NOSIZE = 1
Global Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
Global Const HWND_TOPMOST = -1
Global Const HWND_NOTOPMOST = -2

'---------------------------------

Och sen där du vill sätta fokus:
\<font size="1" face="Verdana, Arial, Helvetica, sans-serif"\>Kod:\<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#666600"\>
res& = SetWindowPos(Formnamnet.hwnd, HWND_TOPMOST, 0, 0, 0, 0, FLAGS)  ' Gör överst
'Sen måste vi släppa fokua, annars kan vi inte göra nåt annat =)
res& = SetWindowPos(Formnamnet.hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, FLAGS) 'Lämna tillbaks

Permalänk: https://www.webforum.nu/p/400081

## #3 — PishtheDJ, 2002-02-04T20:42Z

Jag är ju självlärd och så så jag vet inte om jag gör "rätt" men kan man inte sätta en interval på typ ..1...och skriva form1.setfocus..????bara undrar..

Permalänk: https://www.webforum.nu/p/400082

## #4 — fredrik, 2002-02-05T10:21Z

Att sätta en timer med intervall på "1" är prestandamässigt fruktansvärt dumt och tidsödande. 

Sen får inte fönstret "äkta" fokus, dvs. kan fortfarande finnas fönster som lägger sig över.

Med ett API-anrop kan du däremot tvinga fönstret att lägga sig över allt annat, program, spel osv.

Detta görs även bara med 1 kommando som körs en gång.

Om du har tänkt på hur "sök-rutan" i Anteckningar fungerar så ser du att den ligger över själva text-rutan även om det är text-rutan som har fokus där du kan skriva. Det åstakommer du tex. inte utan API.

Permalänk: https://www.webforum.nu/p/400083

## #5 — PishtheDJ, 2002-02-10T15:24Z

Tack för förklaringen!!

Permalänk: https://www.webforum.nu/p/400084

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/27763-äkta-fokus-på-programmet
