Dela via


Anvisningar: Lägga till, redigera eller ta bort kontroller (C++)

Med hjälp av dialogredigeraren kan du lägga till, ändra storlek på, redigera och ta bort kontroller i dialogrutor. Du kan också redigera egenskaperna för en kontroll, till exempel dess ID, eller om den först visas vid körning.

Fliken Dialogredigeraren visas i fönstret Verktygslåda när du arbetar i dialogredigeraren. Du kan också anpassa fönstret Verktygslåda för enklare användning. Mer information finns i Använda verktygslådan och Visa eller dölj fönstret Verktygslåda.

Tips/Råd

När du använder dialogredigeraren kan du i många fall välja höger musknapp för att visa en snabbmeny med kommandon som används ofta.

Lägg till kontroller

Så här lägger du till en kontroll

  1. Kontrollera att fönstret med flikar i dialogrutan är det aktuella dokumentet i redigeringsramen. Om en dialogruta inte är det aktuella dokumentet visas inte fliken Dialogredigeraren i verktygslådan.

  2. På fliken Dialogredigerare i fönstret Verktygslåda väljer du den kontroll du vill ha och sedan antingen:

    • Välj dialogrutan på den plats där du vill placera kontrollen och kontrollen visas där du har valt.

    • Dra och släpp kontrollen från fönstret Verktygslåda till platsen i dialogrutan. Du kan sedan flytta runt kontrollen eller ändra dess storlek och form.

    • Dubbelklicka på kontrollen i fönstret Verktygslåda så visas den i dialogrutan. Flytta kontrollen till den plats du föredrar.

Så här lägger du till flera kontroller

  1. När du håller ned Ctrl-tangenten väljer du en kontroll i fönstret Verktygslåda .

  2. Släpp Ctrl-tangenten och välj dialogrutan så många gånger som du vill lägga till den specifika kontrollen.

  3. Tryck på Esc för att sluta placera kontroller.

Så här storleksanpassar du en kontroll när du lägger till den

  1. Välj en kontroll i fönstret Verktygslåda .

  2. Placera markören som visas som hårkors, där du vill att det övre vänstra hörnet av den nya kontrollen ska finnas i dialogrutan.

  3. Välj och håll ned musknappen för att fästa det övre vänstra hörnet av kontrollen i dialogrutan. Dra sedan markören till höger och nedåt tills kontrollen är den storlek du vill ha.

    Anmärkning

    Du kan fästa någon av de fyra hörnen i kontrollen som du ritar. Den här proceduren använde det övre vänstra hörnet som exempel.

  4. Släpp musknappen. Kontrollen placeras på dialogrutan i den storlek som du har angett.

Tips/Råd

Du kan ändra storlek på kontrollen när du har släppt den i dialogrutan genom att flytta storlekshandtagen på kontrollens kantlinje. Mer information finns i Storleksanpassa enskilda kontroller.

Så här lägger du till en anpassad kontroll

Du kan lägga till anpassade kontroller i dialogrutan. Välj ikonen Anpassad kontroll i verktygslådan och dra den till dialogrutan. Lägg till en Syslink kontroll genom att lägga till en anpassad kontroll och sedan ändra kontrollens klassegenskap till Syslink. Den här åtgärden gör att egenskaperna uppdateras och visar kontrollegenskaperna Syslink . Information om MFC-omslutningsklassen finns i CLinkCtrl.

Redigera kontroller

Så här redigerar du egenskaperna för en kontroll eller flera kontroller

  1. I dialogrutan väljer du den kontroll som du vill ändra.

    Anmärkning

    Om du väljer flera kontroller kan endast de egenskaper som är gemensamma för de valda kontrollerna redigeras.

  2. I fönstret Egenskaper ändrar du egenskaperna för din kontroll.

    Anmärkning

    När du anger Bitmap-egenskapen för en knapp, alternativknapp eller kryssruta till True, implementeras stilen BS_BITMAP för din kontroll. Mer information finns i Knappformat. Ett exempel på hur du associerar en bitmapp med en kontroll finns i CButton::SetBitmap. Bitmappar visas inte på din kontroll när du är i dialogredigeraren.

Ångra ändringar av egenskaperna för en kontroll

  1. Kontrollera att kontrollen har fokus i dialogredigeraren.

  2. Gå till menyn Redigera>Ångra. Om fokus inte är på kontrollen är kommandot Ångra inte tillgängligt.

Så här definierar du en medlemsvariabel för en (icke-knapp) dialogrutekontroll

Anmärkning

Den här processen gäller endast dialogkontroller i ett MFC-projekt. ATL-projekt bör använda dialogrutan Nya Windows-meddelanden och händelsehanterare . Mer information finns i Meddelandetyper som är associerade med User-Interface objekt, Redigera en meddelandehanterare och Definiera en meddelandehanterare för ett reflekterat meddelande.

  1. Välj en kontroll i dialogredigeraren.

  2. När du trycker på Ctrl-tangenten dubbelklickar du på dialogrutekontrollen.

    Guiden "Lägg till medlemsvariabel" visas.

  3. Ange lämplig information i guiden Lägg till medlemsvariabel . Mer information finns i Dialog Data Exchange.

  4. Välj OK för att återgå till dialogredigeraren.

Tips/Råd

Om du vill hoppa från valfri dialogrutekontroll till dess befintliga hanterare dubbelklickar du på kontrollen.

Du kan också använda fliken Medlemsvariabler i MFC-klassguiden för att lägga till nya medlemsvariabler för en angiven klass och visa redan definierade medlemsvariabler.

Ta bort kontroller

I dialogrutan väljer du kontrollen och trycker sedan på ta bort eller går till menyn Redigera>borttagning.

Andra problem

Felsökning

När du har lagt till en gemensam kontroll eller omfattande redigeringskontroll i en dialogruta visas den inte när du testar dialogrutan. Eller så visas inte själva dialogrutan. Till exempel:

  1. Skapa ett Win32-projekt genom att ändra programinställningarna så att du skapar ett Windows-program (inte en konsolapp).

  2. Dubbelklicka på .rc-filen i resursvyn.

  3. Under dialogrutan dubbelklickar du på rutan Om .

  4. Lägg till en IP-adresskontroll i dialogrutan.

  5. Spara och återskapa alla.

  6. Kör programmet.

  7. I dialogrutans hjälpmeny väljer du kommandot Om och ser att ingen dialogruta visas.

Dialogredigeraren lägger för närvarande inte automatiskt till kod i projektet när du drar och släpper följande vanliga kontroller eller omfattande redigeringskontroller i en dialogruta. Visual Studio tillhandahåller inte heller ett fel eller en varning när det här problemet uppstår. Åtgärda genom att lägga till koden för kontrollen manuellt.

Animeringskontroll
Anpassad kontroll
Datumtidsväljare
Utökad kombobox

Snabbnyckel
IP-adresskontroll
Kontroll av listor
Månadskalender

Förloppskontroll
Rich Edit 2.0-kontroll
Rich Edit-kontroll
Skjutreglagekontroll

Rotationskontroll
Tabbkontroll
Trädkontroll

Om du vill använda vanliga kontroller i en dialogruta måste du anropa InitCommonControlsEx eller AFXInitCommonControls innan du skapar dialogrutan.

Om du vill använda RichEdit-kontroller måste du anropa LoadLibrary. Mer information finns i Om omfattande redigeringskontroller i Windows SDK och Översikt över den omfattande redigeringskontrollen.

Anmärkning

Om du vill använda en RichEdit-kontroll med MFC måste du först anropa AfxInitRichEdit2 för att läsa in RichEdit 2.0-kontrollen (RICHED20.DLL) eller anropa AfxInitRichEdit för att läsa in den äldre RichEdit 1.0-kontrollen (RICHED32.DLL).

Du kan använda den aktuella CRichEditCtrl-klassen med den äldre RichEdit 1.0-kontrollen, men CRichEditCtrl är bara utformad för att stödja RichEdit 2.0-kontrollen. Eftersom RichEdit 1.0 och RichEdit 2.0 är liknande fungerar de flesta metoder. Det finns dock vissa skillnader mellan kontrollerna 1.0 och 2.0, så vissa metoder kan fungera felaktigt eller inte fungera alls.

Infoga ActiveX-kontroller

Med Visual Studio kan du infoga ActiveX-kontroller i dialogrutan. Mer information finns i MFC ActiveX-kontroller och ActiveX-kontrollcontainrar.

I dialogrutan Infoga ActiveX-kontroll kan du infoga ActiveX-kontroller i dialogrutan när du använder dialogredigeraren. Den här dialogrutan innehåller följande egenskaper:

Fastighet Beskrivning
ActiveX-kontroll Visar en lista över ActiveX-kontroller.

Om du infogar en kontroll från den här dialogrutan genereras ingen omslutningsklass. Om du behöver en omslutningsklass använder du Klassvy för att skapa en, se Lägga till en klass.

Om en ActiveX-kontroll inte visas i den här dialogrutan kan du prova att installera kontrollen enligt leverantörens instruktioner.
Sökväg Visar filen där ActiveX-kontrollen hittas.

Försiktighet

Det kanske inte är lagligt att distribuera alla ActiveX-kontroller i systemet. Se licensavtalet för programvaran som installerade kontrollerna eller kontakta programvaruföretaget.

Så här lägger du till en ActiveX-kontroll

  1. Öppna en dialogruta i dialogredigeraren.

  2. Högerklicka var som helst i dialogrutans brödtext och välj Infoga ActiveX-kontroll.

    Dialogrutan Infoga ActiveX-kontroll visas med alla ActiveX-kontroller i systemet. Längst ned i dialogrutan visas sökvägen till ActiveX-kontrollfilen.

  3. Välj den kontroll som du vill lägga till i dialogrutan och välj OK.

    Kontrollen visas i dialogrutan, där du kan redigera den eller skapa hanterare för den på samma sätt som andra kontroller.

Tips/Råd

Du kan använda snabbmenyn i dialogredigeraren för att snabbt lägga till registrerade ActiveX-kontroller i en dialogruta, eller prova att lägga till ActiveX-kontroller i fönstret Verktygslåda för enkel åtkomst.

Redigera egenskaper för en ActiveX-kontroll

ActiveX-kontroller som tillhandahålls av oberoende leverantörer kan vara utrustade med sina egna egenskaper och egenskaper. Dessa egenskaper visas i fönstret Egenskaper . Alla egenskapssidor som skapats av utvecklarna av ActiveX-kontrollen visas i dialogrutan Egenskapssidor. (Om du vill visa egenskapssidan för en specifik ActiveX-kontroll väljer du knappen Egenskapssida i fönstret Egenskaper).

  • Välj ActiveX-kontrollen och gå till menyn Visa>egenskapssida för att visa egenskaperna. Gör ändringar efter behov på egenskapssidan.

    Olika flikar visas på egenskapssidan för en ActiveX-kontroll, beroende på vilka egenskapsblad som ingår i ActiveX-kontrollen.

Anmärkning

Den här proceduren gäller för att använda egenskapssidan för att redigera ActiveX-kontroller. Du kan också bläddra bland och redigera ActiveX-egenskaper i det nya fönstret Egenskaper .

Kravspecifikation

Win32

Se även

Hantera kontroller i dialogrutan
Anvisningar: Layoutkontroller
Anvisningar: Definiera åtkomst och värden för kontroll