Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Alltid Underst?

Postades av 2003-04-04 01:10:28 - Niklas Palmnert, i forum visual basic - allmänt, Tråden har 10 Kommentarer och lästs av 443 personer

hej

det är så att jag har en form som fyller upp hela skärmen
och på den formen kan jag starta lite diverse program
men jag får problemet att när jag startar ett program
och sedan klickar på min form så försvinner mitt startade program

hur ska jag göra för att förhindra detta?

Tack för svar!


Svara

Sv: Alltid Underst?

Postades av 2003-04-04 03:53:21 - Sven Åke Persson

Hej Alltid överst är väl korrektare att beskriva problemmet.

<code>
Option Explicit
'Lämpligen i en BasModul
'**************************************
'Windows API/Global Declarations for :
'Set Form on top easily put this into a module
Declare Function SetActiveWindow Lib "user32" (ByVal hwnd As Long) As Long
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
Public Const SWP_NOACTIVATE = &H10
Public Const SWP_NOMOVE = &H2
Public Const SWP_NOSIZE = &H1
Public Const SWP_SHOWWINDOW = &H40
Public Const HWND_TOPMOST = -1
Public Const HWND_NOTOPMOST = -2
Function FormOnTop(hwnd As Integer, OnTop As Boolean)
Dim wFlags As Long, PosFlag As Long
wFlags = SWP_NOMOVE Or SWP_NOSIZE Or SWP_SHOWWINDOW Or SWP_NOACTIVATE
Select Case OnTop
Case True
PosFlag = HWND_TOPMOST
Case False
PosFlag = HWND_NOTOPMOST
End Select
SetWindowPos hwnd, PosFlag, 0, 0, 0, 0, wFlags
End Function
</code>

/Sven


Svara

Sv: Alltid Underst?

Postades av 2003-04-04 08:11:17 - Raderat konto

Hej, att använda MDI kanske inte är ett alternativ?
/Benny


Svara

Sv: Alltid Underst?

Postades av 2003-04-04 09:47:49 - Niklas Palmnert

Hehe tyvärr sven, du har fel det är inte alltid Överst jag vill ha....

Jag ska förklara mitt problem lite bättre

På mitt program så finns det en väldig massa knappar som jag startar lite olika program, Vi Kan kalla mitt program "Program-Startaren" och när jag tycker för att starta ett program exempelvis "Microsoft Word".
Och allt ser bra ut tills jag trycker någonstanns på "Program-Startaren"
så försvinner "Microsoft Word" Bakom "Program-Startaren"....så praktiskt taget så är det "Microsoft Word" Jag vill lägga överst.

hoppas att ni förstår denna förklaringen bättre



Svara

Sv: Alltid Underst?

Postades av 2003-04-05 13:40:28 - Oskar Johansson

Du kan inte använda active desktop då? Dvs. använda en hemsida som visar en activex i fullskärm?


Svara

Sv: Alltid Underst?

Postades av 2003-04-07 00:16:59 - Niklas Palmnert

men då är det ju bara att höger klicka på skärmen och välja egenskaper
och sedan kan användaren plocka bort det...och det vill jag inte..


Svara

Sv: Alltid Underst?

Postades av 2003-04-07 10:17:50 - Jan Bulér

Det här kan kanske vara något för dig.

I formuläret.
<code>
Option Explicit

Private Sub Form_Load()
HookForm Me
End Sub
Private Sub Form_Unload(Cancel As Integer)
UnHookForm Me
End Sub
</code>

I en modul
<code>
Option Explicit

Declare Function SetWindowLong Lib "User32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Declare Function CallWindowProc Lib "User32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
Declare Sub 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)

Const WM_WINDOWPOSCHANGED = &H47

Const GWL_WNDPROC = (-4)

Const HWND_BOTTOM = 1
Const SWP_NOSIZE = &H1
Const SWP_NOMOVE = &H2
Const SWP_NOACTIVATE = &H10
Const SWP_SHOWWINDOW = &H40

Dim PrevProc As Long

Public Sub HookForm(F As Form)
PrevProc = SetWindowLong(F.hWnd, GWL_WNDPROC, AddressOf WindowProc)
End Sub

Public Sub UnHookForm(F As Form)
SetWindowLong F.hWnd, GWL_WNDPROC, PrevProc
End Sub

Public Function WindowProc(ByVal hWnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
WindowProc = CallWindowProc(PrevProc, hWnd, uMsg, wParam, lParam)
If uMsg = WM_WINDOWPOSCHANGED Then
'Sätt formuläret till "Underst"
SetWindowPos hWnd, HWND_BOTTOM, 0, 0, 0, 0, SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOMOVE Or SWP_NOSIZE
End If
End Function

</code>


//

Janne


Svara

Sv: Alltid Underst?

Postades av 2003-04-08 01:13:18 - Niklas Palmnert

Tack =))) Verkligen stort tack, det fungerade nästan så bra som jag vill ha det

fick dock ett problem med om jag har fler formulär i mitt program

för att det blir så att alla formulär blir "Alltid underst" och det vill jag inte
utan jag vill att det ska endast vara ett formulär som ska vara det

hur löser jag detta problem?


Svara

Sv: Alltid Underst?

Postades av 2003-04-08 08:50:04 - Jan Bulér

Det är bara i det formuläret som du vill ha underst som du ska köra nedanstående kod i.

<code>
Private Sub Form_Load()
HookForm Me
End Sub
Private Sub Form_Unload(Cancel As Integer)
UnHookForm Me
End Sub
</code>

Dina andra formulär ska inte köra HookForm.

Om du av någon anledning måste bevaka olika händelser (meddelanden) till flera olika formulär så kan du naturligtvis använda HookForm men du bör då kanske ändra funktionen så att du t ex skickar med information om vilka meddelanden du vill övervaka för just det formuläret. Denna information får du då lagra för att sedan använda när du ska utvärdera de windowsmeddelanden som skickas till formuläret.

Men som sagt var som du beskriver ditt problem så är det bara ditt "understa" formulär som ska anropa HookForm/UnHookForm.

//

Janne.


Svara

Sv: Alltid Underst?

Postades av 2003-04-08 09:37:23 - Niklas Palmnert

men jag kör bara Hookform på form1
men när jag kör form2 så blir även den i underst läge av någon underlig anledning
och jag kör ingen kod på den rutan


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 167
27 952
271 704
598
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies