13. februar 2008 - 21:59Der er
12 kommentarer og 1 løsning
Fange tryk på image control
Jeg har en form med 100 (et hundrede) imagecontroller på og der vil jeg gerne kunne fange navnet på den control der klikkes på med musen. Det kan ikke gøres ved at fange ActiveControl da den ikke skifter til imagecontrollen når der klikkes på den. Jeg skal bruge det til at fange Controltiptext fra billedet da jeg skal bruge det videre i forløbet.
Jeg er ved at lave en utility til at lave de nye ribbons til Access 2007 og der kan man jo sætte et lille ikon på menupunkterne. Dem har jeg så dannet som små bitmaps som jeg viser på formen 100 ad gangen (der er 2640 ialt på nuværende tidspunkt) og når jeg klikker på et, skal navnet returneres til en anden form. Men for at det kan lade sig gøre på en fornuftig måde uden at skulle lave 100 forskellige funktionskald, så har jeg brug for at fange navnet på den control der klikkes på.
Det kan åbenbart ikke sådan lige lade sig gøre - så jeg dropper ideen og laver det med 100 knapper i stedet for. Der er man da i det mindste sikker på hvilken der er trykket på:-)
En af ulemperne ved access/basic. Det er ganske enkelt for primitivt et programmeringssprog til at den slags kan lade sig gøre. Hvis det er et "must" for udvikling af avancerede brugerflader, kan det anbefales at bruge delphi og tilgå databasen via ODBC. :)
Ja og Delphi er ikke for hvide mennesker når jeg angår databaser synes jeg ikke. Jeg sidder rent faktisk og roder med at skulle lave et program i Delphi 5 der tager en Paradox fil(rent faktisk er der >200 filer) og læser den og gemmer den i en tabel på en MySQL og det kan jeg da ikke få til at fungere:-)
Så man må konstatere at ethvert programmeringssprog har sine gode sider og sine mere besværlige sider :-)
Umiddelbart synes jeg ikke det er noget der kan hjælpe, men som sagt har jeg lavet det til knapper i stedet for. Problemet med imagecontrollen er at det ikke ser ud til at man kan fange hvilken control der er trykket på uden at man angiver det i koden og Activecontrol kan jeg ikke få til at fange det.
Men jeg ville gerne have indlæsningen af billederne speedet lidt op - der er pt. >2600 billeder at vise så bare 0,1 sekund pr. billede betyder meget :-)
I min version adf Access fanger jeg controlname således:
Private Sub Overskrift_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) Dim ctlCurrentControl As Control Dim strControlName As String Set ctlCurrentControl = Screen.ActiveControl strControlName = ctlCurrentControl.Name controltiptekst = ctlCurrentControl MsgBox strControlName End Sub
Det er som sagt noget til Access 2007 og de nye ribbons jeg går og roder med. Det er absolut ikke kun godt det de har fået lavet der, men det kan da bruges. Jeg laver min egen utility til at lave den XML fil der skal bruges til at lave menuen med. Den er meget anderledes end flere af dem der findes på markedet, men jeg synes selv det begynder at ligne noget efterhånden.
Jeg kender intet til Access 2007. Det var tanken, at min arbejdsgiver ville skifte til både Vista og 2007 programpakken. Men det viste sig, at der var for mange børnesygdomme, så indtil videre er det projekt stoppet.
Jeg købte en ny PC for nogle måneder siden og installerede Vista, men var så absolut ikke imponeret. Så der gik ikke mange dage før jeg var tilbage på XP.
Jeg siger ikke det er noget skidt - Men personligt føler jeg, at det er kommet for tidlig på markedet med for mange fejl.
Lad mig sige det på den måde at for mig så er Vista noget der står i medicinkataloget under rubrikken gift :-) Det er dog det (og så en masse ufine ord)..... Der er virkelig plads til forbedringer med SP1
Office 2007 er ikke så galt når først lige man får skovlen under den, men de der ribbons kræver lidt tilvænning og programmering af dem er temmelig meget op ad bakke. Access 2007 har også det der 'Trusted location' og indtil jeg fik lavet en lille .reg fil som jeg så kan køre for at oprette sådan en location da syntes jeg også det var besværligt/irriterende.
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.