|
||||||
|
Welcome Access Developer 55: Dark Mode Theme System In this class, we introduce the process of building a complete dark mode system for Microsoft Access, starting with the creation of a flexible settings table to store color palettes for forms, sections, and controls. We will discuss techniques such as using array lists to manage objects, looping through forms and controls with reusable code, and capturing and applying appearance settings across an application. We will also talk about updating both open and new forms with the selected theme, controlling the Access workspace's appearance, and setting up a theming system that can be customized further. NavigationKeywordsAccess Developer, dark mode, theming system, color palette settings table, hex colors, light mode switch, array list forms, reusable code, looping forms controls, apply properties, workspace background, theme settings, open forms update, button gradients,
IntroIn this class, we introduce the process of building a complete dark mode system for Microsoft Access, starting with the creation of a flexible settings table to store color palettes for forms, sections, and controls. We will discuss techniques such as using array lists to manage objects, looping through forms and controls with reusable code, and capturing and applying appearance settings across an application. We will also talk about updating both open and new forms with the selected theme, controlling the Access workspace's appearance, and setting up a theming system that can be customized further.TranscriptWelcome to Microsoft Access Developer 55, brought to you by AccessLearningZone.com. I am your instructor, Richard Rost.In today's course, we are building a complete dark mode system for Microsoft Access from the ground up, starting with a flexible settings table and learning how to store color palettes for every form, every section, and every control in your database. Along the way, you will pick up some powerful techniques like using array lists to dynamically manage objects, writing reusable code to loop through forms and controls, and safely capturing and applying properties across your entire application. We will then bring it together by creating a system that lets you switch between light mode and dark mode instantly, updating every form that is open and making sure new forms automatically follow the current theme. From there, we will go a step further and tackle the Access workspace itself so you can control the look and feel behind your forms and really give your database that polished, professional appearance. By the time you are done, you will not just have a dark mode, you will have a customizable theming system that you can extend however you want. More importantly, you will understand the techniques behind it so you can apply them to all kinds of advanced interface features in your own projects. Of course, I recommend you take all of my classes in order and that you do not skip levels. Do not skip levels. Sometimes, people pick up courses just because they want just the dark mode stuff, for example. If that is the case, you should obviously know the material covered in my beginner, expert, and the first couple of developer classes, as well as some VBA basics. You should have an understanding of events and form logic and some basic familiarity with SQL, select and insert, and recordsets. If you need to brush up on any of these topics, go to my website, use the search bar, type in the topic that you need, and you will find a video for it. It is currently April of 2026, so the version of Access that I am using is closest to Access 2024. I am using a Microsoft 365 subscription. This should work back to at least Access 2007. These techniques should be the same for all of those versions. If you have questions regarding the material covered in today's class, scroll down to the bottom of the page that you are on and post your questions there. Take a minute to read through any other questions that might be there because chances are your question might have been answered already. The nice thing about the website is the way that I just recently redesigned it so every video has its own Q&A page below it. We are sure that you are talking about the right video. People who have not taken this course cannot see it, so you can feel free to post source code or whatever you want. If you have a general Access question that is not related to today's class, then I ask that you post it in the general Access forum so that everybody can benefit from the answers instead of just the people that took the class. Now, let us take a closer look at what is covered in today's course. In lesson one, we are going to lay the foundation for our dark mode system by building the settings table that stores all of the colors for your forms, sections, and controls. I will show you how to design that table properly, why we use hex colors instead of RGB, and how to generate a list of all of the forms in your database using an array list so we can work with them efficiently. In lesson two, we are going to build the engine that captures and saves your form's appearance. You will learn how to loop through every section and every control on a form and read their color properties and then store those properties in the table. We will also set up reusable functions and clean up our code structure so everything is organized and easy to expand. In lesson three, we are going to bring everything to life by switching between light mode and dark mode across your entire database. We will write the code to apply those saved settings back to your forms, loop through all of the open forms, and make sure that new forms automatically follow the current theme so your interface stays consistent. In lesson four, we are going to take it one step further and fix that big, bright Access background that sits behind your forms. I will show you how to create a full background layer that matches your dark mode, manage its behavior with your theme settings, and also cover a couple of useful enhancements like event handler shortcuts and restoring button gradients. That is what is covered in Developer 55. Now sit back, relax, grab your cup of coffee, and get ready for lesson one. Remember, watch it once through and then follow along a second time with me. Here we go. QuizQ1. What is the primary goal of the course described in the video?A. Learning basic Microsoft Access navigation B. Building a customizable dark mode system for Access C. Designing tables and relationships in Access D. Creating reports in Access Q2. What database object is first modified in lesson one to start the dark mode system? A. Query B. Report C. Settings table D. Macro Q3. Why does the instructor recommend using hex colors instead of RGB for the settings table? A. Hex codes are easier to read in VBA B. Hex codes take up less storage space C. Hex codes are more universally compatible and easier to store as strings D. RGB formats are not supported in Microsoft Access Q4. Which technique is introduced to manage all forms efficiently in the course? A. Using SQL scripts B. Exporting to Excel lists C. Using array lists to dynamically manage objects D. Manual listing of forms Q5. What is the purpose of looping through every section and control on a form in the dark mode engine? A. To check for errors in controls B. To count the number of controls C. To capture and save color properties for theming D. To delete unnecessary controls Q6. When switching themes, what must the system ensure according to the course? A. Only main forms update to the new theme B. New forms automatically follow the current theme C. Only buttons change color D. Each control must be updated manually Q7. What additional UI area is addressed in lesson four that often disrupts the dark mode appearance? A. Navigation pane B. Data tables C. Access workspace background behind forms D. Report print preview window Q8. What type of code approach is encouraged for theme management in this course? A. Hardcoding properties into each form B. Reusable functions and organized code structure C. Copy-pasting code between forms D. Using only macros, not VBA Q9. For questions specifically about the course content, where should students post them according to the video? A. The general Access forum B. The video's Q&A page on the website C. Email the instructor directly D. Social media pages Q10. What prerequisite knowledge does the instructor recommend before taking this class? A. Only knowledge of running Access B. Beginner, expert, developer courses and VBA basics C. Just basic form design proficiency D. No prerequisites are required Answers: 1-B; 2-C; 3-C; 4-C; 5-C; 6-B; 7-C; 8-B; 9-B; 10-B DISCLAIMER: Quiz questions are AI generated. If you find any that are wrong, don't make sense, or aren't related to the video topic at hand, then please post a comment and let me know. Thanks. SummaryToday's video from Access Learning Zone focuses on building a complete dark mode system for Microsoft Access from scratch. In this Developer 55 class, I will show you how to establish a flexible settings table that allows you to store color palettes for every form, section, and control throughout your database. This foundation is what enables full customization and theming in Access.You will learn several advanced techniques in the process. I will demonstrate how to use array lists to dynamically manage the objects in your application. We will write reusable code that can loop through forms and controls, and I will show you how to reliably capture and apply properties across multiple parts of your database. This ensures changes are made systematically and efficiently. After we set up the underlying architecture, you will build a system that lets you switch instantly between light and dark modes. This will update every currently open form and ensures that any new forms follow the same theme so your entire interface remains consistent. We will then address the appearance of the main Access workspace, letting you control the background behind your forms for a more unified and polished look. By the end of this course, you will have more than just a simple dark mode option. You will have a fully customizable theming infrastructure that you can adapt and extend for any style you want. Even more importantly, you will understand the strategies and programming methods behind it, which you can apply to other advanced interface customization tasks in your own Access projects. Before taking this class, I recommend that you have worked through my previous courses in order. It is important not to skip levels, even if you are just interested in dark mode, because you need a foundation in Access development. Make sure you are comfortable with form events, basic VBA, and understand concepts like using SQL, recordsets, and the basics of form logic. If you need to review any specific skills, you can always visit my website and use the search feature to find helpful tutorials on those topics. For this video, I am using Microsoft Access 2024 as part of a Microsoft 365 subscription. However, the techniques shown here are compatible with versions going back to Access 2007, so you should be able to follow along regardless of which version you are using. If you have questions about the content in this course, you can scroll down to the Q&A section located right below this video on my website. Check through the existing questions first to see if your topic has already been covered. Only registered students for each course will see and be able to contribute to these Q&A sections, so you do not need to worry about posting source code or details. For general Access questions not related to this class, please use the general Access forum so everyone can benefit from the discussion. Here is a brief overview of what we will cover in the lessons: Lesson one establishes the settings table that will store all color values for your forms, sections, and controls. We will talk about the structure of the table, why hex colors are better than RGB for this context, and how to automatically generate a full list of forms in your database using array lists to make future management easier. In lesson two, we build the core engine that captures your form's visual settings and saves them. You will learn to loop through every section and control on your forms, record their color properties, and save all this data to the table. This lesson also covers how to create reusable code and keep everything organized for future development. Lesson three shows how to take these stored settings and use them to switch your interface between light and dark modes. You will write routines to apply the themes across all the open forms and guarantee that any newly opened forms automatically match the current theme for a seamless user experience. Lesson four looks beyond the forms themselves to address the default Access workspace background. I will demonstrate how to set up a custom background that matches your chosen theme, and you will learn some advanced techniques, such as creating event handler shortcuts and how to restore gradient effects for buttons if you want them. That is what we cover in Developer 55. Grab your coffee, get comfortable, and follow along as we step through each lesson. I always recommend watching each lesson first, then working through the examples yourself as you replay the material. You can find a complete video tutorial with step-by-step instructions on everything discussed here on my website at the link below. Live long and prosper, my friends. Topic ListBuilding a settings table for dark mode colorsStoring color palettes for forms, sections, and controls Using hex colors instead of RGB values Generating a list of all forms with array lists Efficient management of forms using array lists Capturing and saving form appearance properties Looping through form sections and controls for properties Storing color properties in a database table Setting up reusable functions for theme management Organizing and cleaning up VBA code structure Switching between light mode and dark mode instantly Applying saved theme settings to open forms Ensuring new forms follow the current theme Creating a themed background layer behind forms Managing Access workspace appearance in dark mode Controlling background layer behavior with theme settings Adding event handler shortcuts for theming Restoring button gradients in themed forms ArticleCreating a dark mode system for Microsoft Access can give your application a modern, user-friendly appearance while helping users reduce eye strain. In this tutorial, I will show you how to set up a fully customizable theming system from scratch. You will learn how to store and apply sets of color values - light or dark - to every form, section, and control in your database. This approach will give you both flexibility and control, letting you expand the theming system however you like.We start with a settings table that holds all color data. Structuring your table properly matters, so let us talk about what to store. Each palette entry should identify the form, section, or specific control it applies to, along with the property being set (for example, BackColor or ForeColor) and the color value itself. We use hexadecimal color values (such as #222222 for dark gray) rather than Access's default RGB (Red, Green, Blue) numbers, since hex codes are easier to manage and more universal. If you want, you can write a simple VBA function to convert between hex and RGB values. For example, your settings table might look something like this: SettingID | ThemeName | FormName | SectionName | ControlName | PropertyName | ColorHex 1 | Dark | frmMain | Detail | | BackColor | #222222 2 | Dark | frmMain | | btnSave | BackColor | #333333 3 | Light | frmMain | Detail | | BackColor | #FFFFFF With this structure, you can store different appearance values for each part of every form in both light and dark themes. Next, generating a list of all forms in your database is essential for systematic appearance management. Using a VBA ArrayList makes it easy to assemble and manipulate lists of objects. You can loop through the AllForms collection to gather form names and then work with them dynamically. Here is an example of how you might do that: Dim formList As Object Set formList = CreateObject("System.Collections.ArrayList") Dim obj As AccessObject For Each obj In CurrentProject.AllForms formList.Add obj.Name Next This allows your code to process or update every form as needed. Now that you have your settings table and list of forms, the next step is to build the engine that captures and saves your application's appearance. Use a loop to scan each section and control of a form, read the relevant property values (like colors), and write them to your table. You should encapsulate this logic in reusable VBA procedures, such as SaveFormAppearance(formName, themeName), to keep things organized. Here is a simplified illustration of how you might loop through all controls and store their color properties: Dim ctl As Control For Each ctl In Me.Controls ' Only process controls that have color properties If HasColorProperty(ctl) Then ' Save property (example: BackColor) SaveColorSetting Me.Name, ctl.Name, "BackColor", ctl.BackColor, "Dark" End If Next You will need a helper function like HasColorProperty to determine if a control supports the property you want to store. The SaveColorSetting subroutine would then insert or update the setting in your settings table. Once the color settings are stored, switching between light and dark mode is a matter of reading those settings and applying them to every open form. To do this, write a routine that loops through all open forms, checks the current theme, and updates each section and control based on the saved values. Make sure to include logic that applies the current theme to forms as they open, not just those that are already open. This keeps your interface consistent at all times. For example, you might have a ChangeTheme(themeName) procedure that reads the right settings and loops through all open forms to update them immediately. You can call this procedure from a button on your main menu or any other place where users choose their preferred appearance. You may also use the Form_Open event to make sure new forms pick up the current theme automatically: Private Sub Form_Open(Cancel As Integer) ApplyTheme Me.Name, GetCurrentTheme() End Sub One important detail in creating a true dark mode experience in Access is handling the workspace area, which is the blank area behind your forms. By default, this area remains white or gray, contrasting with your darker forms. To address this, you can create a neutral background form that fills the application window and matches your color theme. Make sure this background form opens first and sits behind all other forms. You can also set its color using the same theming routine you apply elsewhere. Finally, refine your theming with small enhancements. For example, restore standard button gradients if your color choice removes visual clarity, or use generic event handlers to cut down repetitive code. Structuring your code with modular procedures makes upgrades and adjustments easier in the future. By following this approach, you will have a professional, extendable theming system for Microsoft Access. Not only will you have dark mode, but you will also have learned techniques such as building settings tables, managing dynamic lists with ArrayLists, creating reusable VBA procedures, and hooking appearance logic into Access events. These skills will serve you well as you develop more advanced interface features for your own projects. To get the most out of this process, make sure you already understand Access form events, basic VBA coding, SQL statements, and recordsets. If you need to review these, there are many resources available online to help you catch up. With these fundamentals established, you are ready to dive in and start building your own Access dark mode system. Enjoy the process and feel free to customize everything to best fit your application's needs. |
||
|
| |||
| Keywords: Access Developer, dark mode, theming system, color palette settings table, hex colors, light mode switch, array list forms, reusable code, looping forms controls, apply properties, workspace background, theme settings, open forms update, button gradients, PermaLink How To Build a Complete Dark Mode and Light Mode Theme System for Forms in Microsoft Access |