13. december 2004 - 04:51Der er
35 kommentarer og 1 løsning
Fortsættelse af C++ projekt
Bertelbrander dette er ment til dig...:)
Hvis du kan lave programmet, således at man kan indsætte 3 stk gifs i stedet for de 3 knapper og at programmet bliver tjekket for div. fejltjek og at den IKKE skriver nogen besked ud hvis der opstår en fejl...ja så er endnu 200 points dine... ;)
gif's er et problem. Windows har ikke indbygget support for gif. Så vidt jeg ved skal man købe en licens hvis man vil bruge gif's i sine programmer.
Der er ikke ret meget der kan fejle i programmet. Du bør nok lave nogle check ved CreateProcess. Man kunne starte med at checke returværdien og bruge GetLastError til at finde eventuellefejl beskeder. Jeg tvivler på at programmet kan provokeres til at lave fejl der resulterer i popup boxe.
Du bør naturligvis teste programmet på diverse versioner af windows.
en lille ting...hvad skal jeg skrive for at formen bliver lukket ned igen, efter at man har trykket på den ønskede knap og den pågældende exe-fil er blevet kaldt...?
nu er jo ikke C++ mand....men er det ikke muligt, at tjek for fejl/fange dem og lade programmet fortsætte...lade den køre videre i koden uden at brugeren opdager noget...det er klart, at det afhænger af hvilken typen fejl som opstår....
Hvilen type fejl fanger overstående kode...?
Jeg er kender stort set kun til java og c#/.net...og der er alt jo noget lettere at lave...der er det meget let at fange exceptions....
er der en måde jeg kan se hvorledes den messengebox med fejlmeddelsen ser ud? kan jeg gøre så den kommer frem...eller kan du sende et shot?...Blot så jeg lige kan rette den ordentlig til...
btw...det kode du hatr skrevet fanger da ikke selve fejlen vel....udskriver den ikke blot en besked på skærmen...hvad vil der ske hvis fejl opstår og jeg ikke har indsat overstående kode...?
Der er ikke nogen af de funktioner der kaldes i programmet det laver exceptions. Man kan naturligvis checke returværdierne for alle de kaldte funktioner, men jeg tvivler meget på at de nogensinde fejler. Hvis der opstår en fejl vil programmet blot komme til at se forket ud (og i meget usansynlige tilfælde lukke ned). En realistisk fremgangsmåde er at teste programmet grundigt og lukke de fejl der måtte opstå under test.
Koden ovenfor giver kun brugeren en besked hvis programmet ikke kan starte det valgte program. Hvis du vil se hvoran boxen ser ud, skriver du bare navnet på et eksisterende progam i ButtonInfo[id].ProgramName, og trykker på knappen.
Du putter kaldet til PostQuitMessage ind lige efter:
Har lige opdaget en fejl...er det muligt, at gøre således at knapperne forbliver de samme steder på formen, ligegyldigt hvilken opløsning brugerens skærm kører med...har placeret de 3 knapper midt på formen med mere mellemrum imellem og der skulle de gerne blive...:)
Du bestemmer positionen af knapperne ved: CreateWindow("BUTTON", .... 10 + 50*x, 50, 40, 40,
Du kan evt. håndtere WM_SIZE og så flytte dem der. Brug GetClientRect(hwndDlg, &Rect); til at finde ud af hvor vinduet er og MoveWindow(GetDlgItem(hwndDlg, IDC_EXECUTE +x), ... til at flytte dem.
jeg er med på hvordan jeg flytter dem manuelt...har som sagt hvor jeg gerne vil have de skal være...men de er ikke "Anchored" (sat fast på en bestemt plad på formen)...
Vinudet kører i fuldskærm....så labellen og de 3 knapper skal altid placeres ca. i middten af skærmen...kan du koden/et eks. til dette?
det er tæt på...de skal blot være på samme linie de 3 flag...og jeg skal kunne sætte størrelse på knapperne, således at jeg kan gøre dem breddere end de er høje...
igen...det er tæt på...men hvordan får jeg lavet et mellemrum imellem de 3 knapper det skal være en 2-3 imellem dem...det kan jeg ikke lige se, uden at bruge kommatal...
Hvis du bruger sidste metode er afstanden mellem knapperne bestemt af bredden på vinduet, hvilket gør at de bliver mere jævnt fordelt ved forskellige bredder.
bingo....det eneste der så er ....at baggrundsbillede bliver ikke så pænt hvis man køre med en relativ høj opløsnin....fx. 1600 x 1200....det billede jeg har indsat er nemlig kun 800 x 600....men jeg kan jo ikke rigtig lave det større idet kun en del af det vil blive vist, hvis brugeren kører en lavere opløsning...
ja det gør det...men opløsningen bliver jo ik så pæn på alle skærme idet det er fuldskærm...men...nu har bare lavet formen mindre - den behøves nemlig at køre i fuldskærm...så nu er den bare fin!!
Nu kan jeg vist ikke finde på mere at spørge om...:) læg et svar og få dine velfortjente points!! Det er super at du har ville hjælpe mig SÅ meget...HVIS jeg finder en fejl i programmet, håber jeg at du hjælpe mig med det - men det bliver jo nok ikke aktuelt - Go' JUL ;))
Jamen, mange tak for det da! Jeg stiller nemlig ofte spg...såå det vil aldrig skade mig...tak igen
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.