08. juli 2003 - 15:09Der er
30 kommentarer og 2 løsninger
Info og pop-up-mode
Jeg kunne godt tænke mig at lave en slags hjælpefil til min database med oplysninger om, hvordan man bruger programmet, råd og tips samt, at det er mig, der har lavet programmet. Hvordan gør jeg det - og kan sådan en fil integreres i databasefilen?
Yderligere kunne jeg godt tænke mig, at min formular popper op direkte på skærmen ALENE - så Access højst ligger i startlinjen... med andre ord nærmest som en post-it-besked..
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Det, du foreslår, var min nødplan. Men det er ikke det, jeg vil.
Jeg prøver igen:
1. Findes der en form for hjælpefil, som man kan lave, der i sin opbygning minder om andre hjælpefiler? Pyt med, hvis ikke den kan integreres i databasen. Det var bare for at vide, hvordan man gør.
2. Kan man på nogen måde få en formular (en lille én, som IKKE skal fylde hele skærmen) til at poppe op på skærmen UDEN resten af Access-programmet bliver synligt? Altså lige som en "seddel" man kan få de der "post-it-programmer" til at sætte på skærmen? Så kunne man evt. lade "hjælp" fylde hele skærmen.
Theofilos-> Lad os starte med pkt. 2 Du kan lave din formular som popup/modal. Dernæst kan du enten lave en genvej til databasen, som du bruger til at åbne den hver gang (denne skal så sættes til at åbne minimeret). Alternativt kan du her: http://www.mvps.org/access/api/api0019.htm finde en funktion, som giver dig mulighed for at minimere og maksimere Access Main vindue.
Mht hjælpfiler, så findes der en del forskellige programmer, som kan lave hjælpfiler. De fleste hedder noget med Helpdesigner, helpwriter, helpcreator og lign. Disse kan lave hjæpefiler ligesom når du sidder og skriver i Word. Hvert dokument for så et Help context ID, som du kan angive på hver formular eller på hver kontrolelement (kig selv i egenskaberne).
Flere af programmerne er fuld funktionsdygtige i trialversionerne.
Det er sikkert rigtigt, Thomas, men det ser godt nok vanskeligt ud.
Min formular er sat til "popup". Men det fjerner jo ikke Access-vinduet. Jeg ønsker jo ikke manuelt at minimere Access-vinduet hver gang, jeg åbner min database...
Lidt mere hjælp ville være strålende... jeg ved ikke rigtig, hvor jeg skal begynde...
På din formular VedIndlæsning (Form_Load) kan du skrive: Const SW_HIDE = 0 fSetAccessWindow SW_HIDE
Herefter laver du et nyt modul, hvor du indsætter:
Global Const SW_HIDE = 0 Global Const SW_SHOWNORMAL = 1 Global Const SW_SHOWMINIMIZED = 2 Global Const SW_SHOWMAXIMIZED = 3
Private Declare Function apiShowWindow Lib "user32" _ Alias "ShowWindow" (ByVal hwnd As Long, _ ByVal nCmdShow As Long) As Long
Function fSetAccessWindow(nCmdShow As Long) Dim loX As Long Dim loForm As Form On Error Resume Next Set loForm = Screen.ActiveForm If Err <> 0 Then 'no Activeform If nCmdShow = SW_HIDE Then MsgBox "Cannot hide Access unless " _ & "a form is on screen" Else loX = apiShowWindow(hWndAccessApp, nCmdShow) Err.Clear End If Else If nCmdShow = SW_SHOWMINIMIZED And loForm.Modal = True Then MsgBox "Cannot minimize Access with " _ & (loForm.Caption + " ") _ & "form on screen" ElseIf nCmdShow = SW_HIDE And loForm.PopUp <> True Then MsgBox "Cannot hide Access with " _ & (loForm.Caption + " ") _ & "form on screen" Else loX = apiShowWindow(hWndAccessApp, nCmdShow) End If End If fSetAccessWindow = (loX <> 0) End Function
Thomas har da svaret fint på mit spørgsmål. Det er bare ærgeligt, at det ikke virker for mig (Access 2000). Kan det skyldes en eller anden hændelse i min formel? F.eks. autoexec'en?
Afhængig af hvor maget du vil skrive i dine hjælpetekster, er der en lidt nemmere vej.
I formularens designvisning højreklikker du på et felt > egenskaber > fanen > andre.
Her har du en egenskab der hedder Statuslinietekst. Hvis du skriver en hjælpetekst her, vil den blive vist nederst til venstre på skærmen i formularens statuslinie.
En anden egenskab er kontrolElementTiptekst. Den tekst du skriver her vil poppe op som et lille vindue, når markøren glider henover feltet i formularvisning.
nok ikke så prof som de øvrige forslag, men jeg plejer at benytte tiptekst til at skrive f.eks. inputmasker, hvis f.eks et datofelt kræver en bestemt indtastning.
På www.helpmaster.com er der en masse gode råd og downloads. Og Microsofts Help Compiler, som producerer .chm-filer, kan hentes gratis hos Microsoft. Søg efter: HTML Help Workshop.
Jeg prøvet med Help Workshop, det varer noget før jeg bliver fortrolig med det program. Så jeg gjorde det at jeg lavede hjælpeoplysningerne i Word, derefter med Word kunne jeg lave det om til en HTML-fil, som så kunne åbnes via et hyperlink i en formular,(jeg kunne ikke få en knap til det).
Knappen skal starte en makro: KørProgram og i kørselslinjen f.eks. c:\windows\hh.exe c\windows\help\calc.chm som starter hjælp til lommeregner. Prøv først om kommandolinjen er rigtig i "Kør" og kopier linjen herfra.
Access kan ikke rigtig finde ud af om den skal skjule både formularen og Access-vinduet eller den skal komme med en fejl!!
Koden er skrevet til Access 97, hvor den muligvis virker. Men den virker i hvert fald ikke på min Access XP.
Jeg har prøvet alt muligt: Sat en forsinkelse på vha timeren, aktiveret koden efter at formularen var åben, lavet et loop, som skulle få den til at blive ved at forsøge indtil formularen var færdigindlæst. Alle 3 uden held.
Nej for problemet er at det ikke kan laves i Access, men i Windows med en funktion, som kan kaldes fra Access. Og den har Thomas lavet til dig. Du går altså hen i Moduler og kopier teksten ind i et nyt modul og kalder den med konstanten 2, dvs. fSetAccessWindow(2).
De afgørende svar kom fra Thomas (får 40 points) og Fynbohans (får 20 points).
Nu virker skidtet - skal dog lige rettes lidt til.
Mvh
Theofilos
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.